nginx的配置与说明

之前我们已经通过PPA安装了php7.1和nginx,并且配置完了php-fpm,现在只要完成nginx的配置,就可以简单的使用php来进行编程了

找到自己nginx下的site-available目录,在其中新建demo.conf配置文件(下图是我自己的所用的配置)


listen:设置nginx监听哪个端口进入的HTTP请求。一般情况下,HTTP流量从80端口进口,HTTPS流量从443端口进入

server_name:识别虚拟主机的域名,指向服务器的IP地址

index:HTTP请求没指定文件时伺服的默认文件

client_max_body_size:对于这个虚拟主机来说,nginx接受HTTP请求主体长度的最大值。如果请求主体长度超过这个值,nginx就会返回HTTP 4XX响应

error_log:错误日志地址,这个地址必须是我们能够有权限访问的文件,不然会报错

access_log:访问日志地址,这个地址也是我们能够访问的文件

root:文档根目录地址

location块:告诉nginx如何处理匹配指定URL模式的HTTP请求

location / {}块:使用try_files指令查找匹配所请求URL的文件;如果没有找到相应的文件,再查找匹配所请求URL的目录;如果也没有,就把HTTP请求的URL重写为/index.php,如果有查询字符串的话,就将查询字符串附加在URL的末尾。这个重写的URL,以及所有以.php结尾的URL都将由location  ~ \.php {}块进行处理

location ~ \.php {}块:把HTTP请求转发给php-fpm进程池处理,前面我们在php-fpm进程池中监听了9000端口,在这个块中,我们把请求转发给9000端口,交给php-fpm进程池处理,其余的几行代码是为了防止远程代码执行攻

配置完配置文件后,在Ubuntu中还需要在/etc/nginx/sites-enabled/目录下创建配置文件的链接:

sudo ln -s /etc/nginx/sites-available/demo.conf /etc/nginx/sites-enabled/demo.conf

然后我们重启nginx就行

sudo service nginx restart


书山有路勤为径 学海无涯苦作舟