1、LNMP
1、安装、配置Nginx
ubuntu装机时最后的装机界面中可以选择安装包,勾选LAMP,系统就会自动安装、配置LAMP(如果不选择预装的LAMP,可以在装机完成之后自行安装LNMP+Yii)
安装完成后访问IP即可出现Apache的欢迎界面,此时安装Nginx:
apt install nginx
若此时打开IP,就会发现Nginx的默认界面与Apache界面一致,进入Nginx配置文件:/etc/nginx/site-available/default,可以看到主文件目录为/var/www/html,执行
mkdir html-nginx
cp -r /var/www/html /var/www/html-nginx
随后将Nginx配置文件中的主目录改为/var/www/html-nginx,将html-nginx中index.nginx.default.php重命名为index.php,访问IP出现Nginx欢迎界面
php -v 可查PHP版本(本文中为7.0)
php -m 查看PHP目前添加的扩展库
2、关联PHP
将Nginx与PHP连接需要更改Nginx配置文件,加入连接的代码,连接方法有两种:tcp socket、unix socket,tcp socket需要使用IP与port(默认9000端口),unix socket需要 php7.0-fpm.sock 的路径
(连接代码参考:https://blog.csdn.net/koastal/article/details/52303316)
首先安装 php7.0-fpm,直接:
apt install php7.0-fpm
service php7.0-fpm start
此时如果用 netstat -ntlp 可以发现 9000 端口并没有开启(至于原因这个目前还没搞清楚),所以如果使用tcp socket就会导致连接失败,这里采用unix socket方式,在Nginx配置文件的server中加入如下代码:
location ~ \.php$ {
root html;
fastcgi_pass unix:/路径/php7.0-fpm.sock; (默认:/var/run/php7.0-fpm.sock)
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /主目录$fastcgi_script_name;
include fastcgi-params;
}
nginx -t 检查配置的语法
service nginx restart 重启
3、安装更多扩展库
apt install php7.0-curl 、php7.0-mcrypt 、php7.0-mbstring
截止到Nginx这里,目前的扩展包是够用了,但是为了防止z在运行中出现许多的未知错误,建议将上边的扩展包也按上
2、在PHP上添加Redis扩展
直接
apt-add-repository ppa:ondrej/php ###使用 PPA ppa:ondrej/php 库
apt install php7.0-redis(若PHP为其他版本,将7.0换成相应数值) 或 apt install php-redis
php -m 在列出的扩展包中找到redis就表示成成功了
在 /var/www/html-nginx 中定义info.php(<?php infophp(); ?>),用IP访问可以找到 Redis
3、Yii框架部署
1、安装PHP扩展包
使用Yii框架需要更多扩展包:apt install php7.0-curl 、php7.0-mcrypt 、php7.0-mbstring是必须的
1、安装composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
2、下载官方的测试demo
安装完composer后,可以下载Yii的官网Demo:
composer create-project --prefer-dist yiisoft/yii2-app-basic basic
访问其中的web/index.php主页就成功了
LNMP参考文章:
https://blog.csdn.net/encircles/article/details/79656242
https://www.cnblogs.com/jiqing9006/p/9075028.html
Redis扩展包:
https://www.cnblogs.com/haozhen/p/10021908.html
Yii框架参考文章:
https://www.yiichina.com/doc/guide/2.0/start-installation
https://blog.csdn.net/fox64194167/article/details/80391455、https://arjunphp.com/yii-mcrypt-php-extension-is-not-installed/