配置LNMP环境的配置过程中,最好使用管理员权限,在前面加上sudo,以下是在阿里云ECS的Centos7.2平台上配置:
安装IUS仓库
连接成功后,安装IUS仓库,这样才能用yum去安装比较新的软件包,获取地址:https://ius.io/GettingStarted
cat /etc/redhat-release //查看系统版本
sudo yum install https://centos7.iuscommunity.org/ius-release.rpm -y //安装
yum repolist //查看仓库列表
安装nginx
sudo yum install nginx -y//安装nginx
sudo systemctl start nginx//启动nginx
sudo systemctl enable nginx//开机自启动
47.89.45.50//打开浏览器输入,出现nginx说明成功
sudo systemctl reload nginx//重启
如果nginx出现问题,可以先启动,再重启:
sudo systemctl start nginx
sudo systemctl reload nginx
安装mariaDB
数据库消耗大量的内容,至少2G的内存服务器
sudo yum search mariadb //搜索版本
sudo yum install mariadb101u-server -y //提示有冲突,先删除原来的资源
sudo yum remove mariadb-libs -y //删除原来的资源
sudo yum install mariadb101u-server mariadb101u -y //重新执行安装
启动数据库【如果数据库出错,网站打不开(The website encountered an unexpected error. Please try again later.),也可以使用以下两段命令重启数据库试试】
sudo systemctl start mariadb //启动
sudo systemctl enable mariadb //开机自启动
mysql_secure_installation //执行安全配置,密码设为root,回答问题全“y”(这个方法也适用于当数据库打不开时,出现登录报错:“ERROR 1045 (28000)”或者其它错误时,如果用了以下命令,可能会删除之前的数据库,得重新导入数据库文件)设置root密码,一直按Y,第一个提示输入root数据库的密码,默认为空,回车
mysql -u root -p //测试
mysql --version //查看版本相关信息
mysql -u root -pdb
mysqldump -u root -pdb > db.sql //导出数据库(导出的数据库文件就在当前目录里)
阿里云RDS(例) 导出MySQL:
mysqldump -u ascm -p -h aoshiyiyuanpai.mysql.rds.aliyuncs.com a> /alidata/b.sql
进入数据库常用命令
mysql -u root -p //进入数据库
create database xxx; //创建数据库
show databases; //查看数据库
drop database xxx; //删除数据库
exit//退出数据库
mysqladmin -uroot password 'yourpassword' //更改root密码
mysql -uroot -p -h192.168.137.10 -P3306 //远程登陆数据库
use xxx; //进入某个数据库
show tables; //列出数据库中的表
desc slow_log; //查看某个表全部字段
show create table slow_log\G; //显示建表语句
select user(); //查看当前用户
select database(); //查看当前所在数据库
create database db1 charset utf8; //创建数据库指定字符集
create table t1 (`id` int(4), `name` char(40)); //创建新表
select version(); //查看数据库版本
安装PHP
sudo yum search php //搜索安装对应版本
sudo yum install php70u-fpm -y //安装,或者安装其它版本的PHP如php56u-fpm
sudo yum install php70u-fpm php70u-cli php70u-xml php70u-gd php70u-mysqlnd php70u-pdo php70u-mcrypt php70u-mbstring php70u-json -y //安装扩展
sudo systemctl start php-fpm //启动
sudo systemctl enable php-fpm //开机自启
sudo systemctl reload php-fpm //重新加载
php -v //查看版本
rpm -qa | grepphp //查看所有已安装的PHP文件
安装memcached
启用memcache后,性能就会有极大的改善
sudoyum search php | grepmemcached //搜索memcache
sudo yum install php70u-pecl-memcached //安装php70u-pecl-memcached
sudo systemctl reload php-fpm //重启PHP
sudo systemctl enable memcached //开机自启动
service memcached start //启动
netstat -tunpl //查看进程是否开启
安装opcache
opcache是 php 的一个扩展,安装后可提升性能,opcache不需要在php.ini中写,安装完默认开启。安装drupal或者其它CMS时,遇到没有opcache会无法安装,参考宁皓网这个教程:https://ninghao.net/video/3588
sudoyum search php | grep opcache //搜索opcache
sudo yum install php70u-opcache -y //需要php70u-opcache ,因为它跟我现在的环境里面使用的 php 是一个版本的
sudo systemctl reload php-fpm //重新加载php-fpm
sudo systemctl restart php-fpm //重启php-fpm
修改PHP配置
cd /etc 找到php.ini文件,修改以下几点,使PHP与Drupal更好的结合
;加大页面执行时间php.ini中的默认值是30 (秒)
max_execution_time = 300
post_max_size = 200M
upload_max_filesize = 200M
;内存的1/4这里必须注意,设置太多会崩溃,因为还有其他程序要用内存,查看内存:free 或者top
memory_limit = 512M
;tmp是服务器根目录777权限,drupal cc all后查看drupal是否还提示上传未知错误
upload_tmp_dir = tmp
;中国时区设置
date.timezone = PRC
改好后保存再重启
sudo systemctl reload php-fpm //重新加载
Nginx主机配置
cd /etc/nginx/conf.d 新建web.conf文件,第一个location为网站静态配置,第二个location是让nginx处理php
server{
listen 80;
server_name www.sskoo.com sskoo.com;
root /home/sskoo;
index index.php index.html;
location / {
index index.php index.html;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi.conf;
}
}
创建对应的网站目录
ssh @ip 到服务器后,使用 cd ../ 查看centos7的相关目录,能看到如下目录:
bin dev home lib64 media opt root sbin sys usr
boot etc lib lost+found mnt proc run srv tmp var
建议把你的网站放到home或者mnt的下面,以home为例:
sudo mkdir -p /home/mysite
sudo chmod 755 mysite //读取权限,否则网站访问不了php权限
然后你就可以把你的网站文件放到mysite里,再重启相关服务,没问题的话,网站就可以打开了
sudo systemctl reload php-fpm
sudo systemctl reload nginx
安装Composer
参考网站:
https://ninghao.net/video/1700#info
https://www.drupal.org/node/2366283
先安装composer依赖的php插件,如果之前在安装php插件时安装过就不用再安装了
sudo yum install php70u-cli -y
第一种方法使用包管理来安装:
curl -S https://getcomposer.org/installer | php
第二种方法安装,打开https://getcomposer.org/download/ 打开复制Command-line installation下的代码,再ssh@ip后键入,输入以下全部命令行回车,环境符合就会安装成功:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
ls查看,会看到下载一个composer.phar文件,输入:php composer.phar会出现一些帮助信息。如果你想在服务器的任何地方去使用的话需要去设置一下,把composer.phar 这个文件放在系统的环境变量里面的某个目录里面,全局使用!
echo $PATH //查看环境变量路径
sudo mv composer.phar /usr/local/bin/composer //好了后可以直接输入 composer 可以看到很多信息表明成功!
vi ~/.bash_profile
追加到PATH后面
原:PATH=$PATH:$HOME/bin
新:PATH=$PATH:$HOME/bin:$HOME/.composer/vendor/bin
让文件生效:source ~/.bash_profile
安装Git
yum search git
sudo yum install git2u -y //安装
sudo yum remove git-core -y //若有提示冲突,删除冲突的包再执行安装
git config --global user.name "yourname" //告诉Git你是谁
git config --global user.email "[email protected]" //告诉Git你的 Email
安装Drush
安装drush,确定安装composer和git之后
第一种安装drush方法,这种方法下载很快,但不知为什么配置很难成功,可以参考下下。把 Github 上的代码 clone 到 /usr/local/src/drush 这个目录下面:
git clone https://github.com/drush-ops/drush.git /usr/local/src/drush
git clone https://github.com/drush-ops/drush.git .config/composer/vendor
然后 cd 到这个目录:cd /usr/local/src/drush
用 composer 安装一下:composer install
然后再系统的环境变量创建一个 drush 的快捷方式,可以使用 ln -s。这里 -s 参数就是 symbolic 的简称,也就是所谓的「软链接」。它的特点在于可以连接目录。
ln -s /usr/local/src/drush/drush /usr/bin/drush
drush help
第二种安装drush方法,这种方法慢且不用安装GIT,但实用在ECS上!
composer global require drush/drush:8.x --prefer-dist -vvv --profile //指定安装8.x版本。使用 composer 在国内下载会比较慢,需要等挺长时间,所以本地安装很难成功。加上一个--prefer-dist表示我们不想去下载带版本控制的东西,再加上一个 -vvv可以显示在安装过程中的更详细的信息,最后再加上一个--profile显示耗费的内存还有时间,composer 会去找出 drush 还有它依赖的东西):完成以后我们可以去看一下,先进入到用户的主目录下面:
ls -la
查看一下这个目录里的东西,有一个 .config 的目录,你会看到一个 composer 目录,再进入到composer这个目录下地vendor:
cd .config/composer/vendor
在这个目录里面,你会看到 composer 下载下来的drush ,还有一些其它的东西,把这个目录下面的 bin 这个目录,添加到系统的环境变量里面,可以去编辑一下主目录下面的 .bash_profile
vi ~/.bash_profile
进入编辑模式后插入一条代码:
export PATH="$HOME/.config/composer/vendor/bin:$PATH"
保存并退出后然后再用 source 去执行一下 .bash_profile:
source ~/.bash_profile
再输入:
drush //跟 drush 命令相关的帮助信息说明证明可以去使用 drush 了
再输入一个:
drush status
会显示一些状态信息,这里会有 PHP 的地址,配置文件,drush 的版本等等