---恢复内容开始---
lnmp1.4 一键安装包 nginx配置thinkphp5
环境:Nginx1.12.1 PHP5.6 Coentos6.8
修改网站配置文件
server
{
listen 443 ssl http2;
#listen [::]:443 ssl http2;
server_name xxx.cn;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/xxx/public;#tp5接口文件位置
#root /home/wwwroot/tp5/public;
ssl on;
ssl_certificate /usr/local/nginx/conf/cert/xxx.pem;
ssl_certificate_key /usr/local/nginx/conf/cert/xxx.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5";
ssl_session_cache builtin:1000 shared:SSL:10m;
access_log /home/wwwlogs/xxx.log main;
include enable-php-pathinfo.conf;
#error_page 404 /error.html;
#location = /404.html {
# return 404 ‘Sorry Not Found‘;
#}
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
############最重要的是下面这几行##############
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;#根据自己的PHP-fpm.conf配置
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
root /home/wwwroot/xxx/public;
expires 7d;
access_log off;
}
location ~ .*\.(js|css)?$
{
expires 12h; # 缓存7天
access_log off;
}
location ~ /\.ht
{
deny all;
}
}
#将url中server_name之后的部分与 /tp5/public/* 匹配 如果匹配则改写URl为/tp5/public/index.php/*
#lnmp一键安装包可直接 include thinkphp.conf
至此配置文件修改完毕,重启nginx
若网页出现 Access denied.
在文件有读写权限的前提下 设置php.ini
cgi.fix_pathinfo =
1
若网页出现scandir() has been disabled for security reasons
在你的php.ini 将 disable_functions 整句注释掉 将scandir 去掉
然后重启php 和nginx ; 熟悉的界面就出现了!
---恢复内容结束---