在Ubuntu下安装Drupal7十分方便,最方便的方式当然是
1
|
sudo
apt-get
install
drupal7
|
但是Ubuntu 的Drupal7包相对于官方下载来说做了相当大的调整,所以安装倒是简单了,但学习起来比较费心费力费时,主要是与网上的参考资料在目录结构上存在着太多的差异,所以还是决定采用手工的方式来进行安装,以下是安装步骤:
1、准备工作:
-
安装tasksel软件包
1sudo
apt-get
install
tasksel
-
安装LAMP服务(Apache2、Mysql和PHP)
1sudo
tasksel
install
lamp-server
-
创建Drupal7的工作目录
12sudo
mkdir
/var/www/drupal7
sudo
chown
firehare:firehare
/var/www/drupal7
之所以要将Drupal7的工作目录的所有者从root改为firehare(Ubuntu下的用户名),一则是出于安全的考虑,二则是为了方便对Drupal7工作目录进行操作。
-
创建Drupal7的虚拟主机文件
1sudo
vi
/etc/apache2/sites-available/drupal7
.conf
具体内容如下:
1234567891011<
VirtualHost
*:80>
ServerName drupal7.firehare.me //
ServerAdmin ubuntu.firehare@gmail.com //该虚拟主机的管理员邮箱
DocumentRoot "/var/www/drupal7" //该虚拟主机的主目录
<
Directory
"/var/www/drupal7" > //设置该虚拟主机主目录的属性
Options FollowSymLinks //允许软链接
AllowOverride All //允许覆写,即允许.htaccess文件覆写属性
</
Directory
>
ErrorLog "/var/log/apache2/drupal7_errors.log" //指定错误日志文件
CustomLog "/var/log/apache2/drupal7_accesses.log" common //指定访问日志文件
</
VirtualHost
>
其中:
12345678ServerName 是指虚拟主机的DNS域名
ServerAdmin 是该虚拟主机的管理员邮箱
DocumentRoot 是指该虚拟主机的主目录
Directory 指设置该虚拟主机工作目录的属性
Options FollowSymLinks
//
该工作目录允许软链接
AllowOverride All
//
允许覆写,即允许.htaccess文件覆写属性
ErrorLog
//
指定错误日志文件
CustomLog
//
指定访问日志文件
备注:
如果没有DNS域名,也可以在自己的测试机上(客户机)将/etc/hosts文件(Ubuntu)或 c:\windows\system32\drivers\etc\hosts 文件(Windows)用管理员权限修改一下,添加以下语句:1X.X.X.X drupal7.firehare.me
其中 X.X.X.X 是指虚拟主机所在服务器的IP地址。这样就可以在自己的机器上直接接入DNS域名来访问虚拟主机。
-
启用Apache2的ReWrite模块
12sudo
a2enmod rewrite
sudo
service apache2 restart
2、下载Drupal7的安装包:
1
|
wget http:
//ftp
.drupal.org
/files/projects/drupal-7
.XX.
tar
.gz
|
其中XX为最新的版本号
3、将安装包中文件解压至Drupal7的工作目录
1
2
|
tar -xvzf drupal-
7
.XX.tar.gz
mv drupal-
7
.XX/* drupal-
7
.XX/.htaccess drupal-
7
.XX/.gitignore /
var
/www/drupal7
|
4、创建上传目录
1
2
3
4
|
mkdir
/var/www/drupal7/sites/default/files
sudo
chown
www-data:www-data
/var/www/drupal7/sites/default/files
sudo
setfacl -R -m u:www-data:rwx -m u:firehare:rwx
/var/www/drupal7/sites/default/files
sudo
setfacl -dR -m u:www-data:rwx -m u:firehare:rwx
/var/www/drupal7/sites/default/files
|
其中将该上传目录用户设为www-data主要是为了让Drupal能够知道它对该目录有读写的权限,以便在做带宽优化时可以合并和压缩CSS,否则的话该功能不能正常。setfacl 语句的作用就是让www-data(Apache2用户名)和firehare(您的用户名)对该上传目录都有权限。如果该命令不起作用,可以百度一下,在/etc/fstab文件中的相关目录添加acl属性即可。这里就不再多讲了。
5、创建站点配置文件
1
2
|
cp
/var/www/drupal7/sites/default/default
.settings.php
/var/www/drupal7/sites/default/settings
.php
sudo
chmod
666
/var/www/drupal7/sites/default/settings
.php
|
6、创建Drupal7的Mysql数据库
1
|
mysqladmin -u root -p create drupal
|
密码为安装MySQL时的root用户密码!然后创建Drupal7的数据库用户
1
2
3
4
|
mysql -u root -p
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON drupal.* TO
'drupaluser'
@
'localhost'
IDENTIFIED BY
'drupalpass'
;
mysql> FLUSH PRIVILEGES;
mysql> \q
|
其中drupaluser为Drupal7的数据库用户,drupalpass为Drupal7数据库用户的密码。
7、浏览器安装
1
|
http:
//drupal7
.firehare.me
/install
.php
|
打开浏览器,在地址栏中输入上面的地址,根据提示进行安装。
安装到最后一步,需要将站点配置文件的权限还原
1
|
sudo
chmod
644
/var/www/drupal/sites/default/settings
.php
|
这样就可以访问Drupal7了!
本文转自 firehare 51CTO博客,原文链接:http://blog.51cto.com/firehare/1404063,如需转载请自行联系原作者