ubuntu-16.04.3-server-amd64
LNMP,即Linux, Nginx, Mysql, PHP
安装Nginx
sudo apt install nginx
安装完后检查配置文件
sudo nginx -t
可见配置文件路径/etc/nginx/nginx.conf,此配置文件中包含具体站点配置所在:
include /etc/nginx/sites-enabled/*
/etc/nginx/sites-enabled/内文件以软链接形式存在,具体文件位于/etc/nginx/sites-available/
安装Mysql
sudo apt install mysql-server
安装过程提示设置root用户密码
重启mysql
sudo service mysql restart
安装PHP
sudo apt install php7.0
安装完后检查配置文件
sudo php7.0-fpm -t
可见配置文件路径/etc/php/7.0/fpm/php-fpm.conf,此配置文件中包含配置:
include /etc/php/7.0/fpm/pool.d/*.conf
- /etc/php/7.0/fpm/pool.d/www.conf中设置了php用于和nginx的通信方式为unix socket(另一种为TCP socket),用于接收FastCGI请求。
listen = /run/php/php7.0-fpm.sock
重启php7.0-fpm
sudo service php7.0-fpm restart
- 与此相对,nginx需要设置同样的socket通信方式,向FastCGI server发送php脚本:
sudo vim /etc/nginx/sites-available/default
修改如下:
server {
...
root /var/www;
index index.html index.htm index.nginx-debian.html index.php;
location ~\.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
...
}
重启nginx
sudo service nginx restart
配置完毕后测试效果:
新建/var/www/index.php文件,写入内容
<?php phpinfo(); ?>
重新加载nginx
sudo nginx -s reload
浏览器输入网址即可看到phpinfo页面。
安装其他组件
sudo apt install php7.0-mysql