环境准备
首先我们需要有一台CentOS6.5以上的主机,如果你还没有使用过Linux的话,本教程就不太适用了。。
使用Drupal
需要Nginx
PHP
MySQL
这些东西,如果觉得安装麻烦可以使用lnmp进行一键安装,
推荐两个安装链接:
- LNMP一键安装包
- LNMP一键安装-支援PHP7
安装方法不再敖述,上面的链接附带教程。有了lnmp环境就可以开始下一步
安装PHP扩展
这些扩展在使用drush
和Drupal
的时候需要用到,所以一定要装好。
查看服务状态
代码语言:javascript复制
$ 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处理
$ yum install php-gd php-mysqlnd php-pdo php-mcrypt php-mbstring php-xmlrpc php-jsonc -y
重启php-fpm服务
安装完扩展后需要重启服务生效
代码语言:javascript复制
$ service php-fpm restart
安装PHP包管理工具Composer
Composer可以方便的管理PHP的依赖
执行下面命令会下载一个叫composer.phar
的文件
$ cd ~
$ curl -sS https://getcomposer.org/installer | php
可以通过php composer.phar
查看composer的命令帮助。为了方便使用composer命令,将composer.phar
放到系统根目录执行。
$ mv composer.phar /usr/local/bin/composer
安装Drush
Drush
命令行主要为了管理Drupal,这里使用Drush开发版
$ composer global require drush/drush:dev-master
查看Drush
安装目录
$ ll ~/.composer/vendor/drush/drush/
将Drush
添加到环境变量中
$ vim ~/.bash_profile
代码语言:javascript复制
# .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*
更新环境变量
代码语言:javascript复制
$ source ~/.bash_profile
使用drush,如果能看到命令提示代表你已经安装成功
代码语言:javascript复制
$ 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
代码语言:javascript复制
$ drush dl drupal-7.43
第二步,进入到drupal目录下载中文简体语言包,并保存到profiles/standard/translations/
。
如果需要更多语言支持,请查看--Drupal Translations
代码语言:javascript复制
$ wget http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.43.zh-hans.po -P profiles/standard/translations/
第三步,创建drupal需要到数据库
代码语言:javascript复制
$ 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站点,将< >
符号的内容替换(包括< >
)
$ 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
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
。
配置详细见下面代码片段
代码语言:javascript复制
$ sudo vim /usr/local/php/etc/php-fpm.conf
/usr/local/php/etc/php-fpm.conf
[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
然后重启服务
代码语言:javascript复制
$ sudo lnmp restart
第六步,修改hosts
如果你已经配好了就可以省略。配置完成后就可以在浏览器通过http://web-stack.drupal.local/
访问了
$ sudo vim /etc/hosts
在末尾添加,代码如下:
/etc/hosts
.
.
.
127.0.0.1 web-stack.drupal.local
温馨提示,如果是在vagrant
虚拟机里面还需要修改端口映射,将80端口映射到主机中
完成之后就可以看到下图效果了