Drupal1

环境准备

首先我们需要有一台CentOS6.5以上的主机,如果你还没有使用过Linux的话,本教程就不太适用了。。

使用Drupal需要Nginx PHP MySQL这些东西,如果觉得安装麻烦可以使用lnmp进行一键安装,

推荐两个安装链接:

  1. LNMP一键安装包

  2. LNMP一键安装-支援PHP7

安装方法不再敖述,上面的链接附带教程。有了lnmp环境就可以开始下一步

安装PHP扩展

这些扩展在使用drushDrupal的时候需要用到,所以一定要装好。

查看服务状态

1
2
3
4
5

$ service php-fpm status

php-fpm (pid 4054) is running...

安装常用扩展

  • php-gd 图像处理

  • php-mysqlnd mysqlnd服务相关

  • php-pdo 数据库相关

  • php-mcrypt 加密相关

  • php-mbstring 多子节字符处理

  • php-xmlrpc xml相关

  • php-jsonc json处理

1
2
3

$ yum install php-gd php-mysqlnd php-pdo php-mcrypt php-mbstring php-xmlrpc php-jsonc -y

重启php-fpm服务

安装完扩展后需要重启服务生效

1
2
3

$ service php-fpm restart

安装PHP包管理工具Composer

Composer可以方便的管理PHP的依赖

执行下面命令会下载一个叫composer.phar的文件

1
2
3
4
5

$ cd ~

$ curl -sS https://getcomposer.org/installer | php

可以通过php composer.phar查看composer的命令帮助。为了方便使用composer命令,将composer.phar放到系统根目录执行。

1
2
3

$ mv composer.phar /usr/local/bin/composer

安装Drush

Drush命令行主要为了管理Drupal,这里使用Drush开发版

1
2
3

$ composer global require drush/drush:dev-master

查看Drush安装目录

1
2
3

$ ll ~/.composer/vendor/drush/drush/

Drush添加到环境变量中

1
2
3

$ vim ~/.bash_profile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

^I. ~/.bashrc

fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

# ------将drush到路径插入到环境变量------

export PATH=$HOME/.composer/vendor/bin:$PATH

export PATH=$PATH:/usr/pgsql-9.4/bin

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

更新环境变量

1
2
3

$ source ~/.bash_profile

使用drush,如果能看到命令提示代表你已经安装成功

1
2
3
4
5
6
7
8
9
10
11
12
13

$ drush

Execute a drush command. Run `drush help [command]` to view command-specific help. Run `drush topic` to read even more documentation.

Global options (see `drush topic core-global-options` for the full list):

.

.

.

开启Drupal

完成上面的准备后就可以开启Drupal了

创建Drupal项目

第一步,在项目目录下载drupal。目前有部分modules不支持8.x以上版本,所以我们在这里指定drupal-7.43

1
2
3

$ drush dl drupal-7.43

第二步,进入到drupal目录下载中文简体语言包,并保存到profiles/standard/translations/

如果需要更多语言支持,请查看--Drupal Translations

1
2
3

$ wget http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.43.zh-hans.po -P profiles/standard/translations/

第三步,创建drupal需要到数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

$ mysql -u root -p

Welcome to the MySQL monitor.

.

.

.

mysql> create database drupal;

mysql> grant all privileges on drupal.* to 'drupal'@'localhost' identified by '<你的密码>';

mysql>exit

第四步,配置Drupal站点,将< >符号的内容替换(包括< >)

1
2
3

$ drush si standard --db-url=mysql://drupal:<数据库密码>@localhost/drupal --site-name=<站点名称> --site-mail=<站点邮箱> --locale=zh-hans --account-name=<管理员账号> --account-pass=<管理员密码> --account-mail=<管理员邮箱> -v

第五步,配置Nginx服务器

编辑/usr/local/nginx/conf/drupal.conf,如果没有就创建一个,然后将相应的server_name root填入。

/usr/local/nginx/conf/drupal.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

server {

listen 80;

server_name web-stack.drupal.local;

root /vagrant_data/drupal;

index index.php index.html;

access_log ^Ion;

location / {

try_files $uri $uri/ /index.php?$query_string;

}

location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

include fastcgi.conf;

}

}

如果是在vagrant 虚拟机里面,需要将drupal.conf放到/usr/local/nginx/conf/vhost/drupal.conf

然后修改php-fpm的配置,将默认的listen.owner listen.group user group 修改为vagrant

listen 改为 127.0.0.1:9000

配置详细见下面代码片段

1
2
3

$ sudo vim /usr/local/php/etc/php-fpm.conf

/usr/local/php/etc/php-fpm.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43

[global]

pid = /usr/local/php/var/run/php-fpm.pid

error_log = /usr/local/php/var/log/php-fpm.log

log_level = notice

[www]

listen = 127.0.0.1:9000

listen.backlog = -1

listen.allowed_clients = 127.0.0.1

listen.owner = vagrant

listen.group = vagrant

listen.mode = 0666

user = vagrant

group = vagrant

pm = dynamic

pm.max_children = 10

pm.start_servers = 2

pm.min_spare_servers = 1

pm.max_spare_servers = 6

request_terminate_timeout = 100

request_slowlog_timeout = 0

slowlog = var/log/slow.log

然后重启服务

1
2
3

$ sudo lnmp restart

第六步,修改hosts

如果你已经配好了就可以省略。配置完成后就可以在浏览器通过http://web-stack.drupal.local/访问了

1
2
3

$ sudo vim /etc/hosts

在末尾添加,代码如下:

/etc/hosts

1
2
3
4
5
6
7
8
9

.

.

.

127.0.0.1 web-stack.drupal.local

温馨提示,如果是在vagrant虚拟机里面还需要修改端口映射,将80端口映射到主机中

完成之后就可以看到下图效果了

drupal首页