环境:
CentOS7.3
lnmp 1.4
配置文件:
nginx.conf 默认配置 不做修改
主要是 vhost 配置文件:
举例 :
lnmp vhost add
虚拟域名 laravel.local.com
网站路径 /home/wwwroot/larvel/public
配置文件:
laravel.local.com.conf
server
{
listen 80;
#listen [::]:80;
server_name laravel.local.com ;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/laravel/public;
include y.conf;
#error_page 404 /404.html;
# Deny access to PHP files in specific directory
#location ~ /(wp-content|uploads|wp-includes|images)/.*.php$ { deny all; }
#注意这里注释掉不然 报错500 ,因为引入了php 配置,其中有句 try_files 开启就有报错
#include enable-php.conf;
#新增 支持laravel 优雅链接,在laravel 文档里有说明
location / {
try_files $uri $uri/ /index.php?$query_string;
}
#新增 支持php 的配置
location ~ .php$ {
#不能有下面这句 try_files ,不然报错500
# try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
#这句注意 后面是.sock 不是127.0.0..1
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
#下面的默认不做修改
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*.(js|css)?$
{
expires 12h;
}
location ~ /.well-known {
allow all;
}
location ~ /.
{
deny all;
}
access_log /home/wwwlogs/laravel.local.com.log;
}
3.超级大坑
如果 是用 lnmp vhost add 命令 添加的虚拟域名
会在根目录生成 .user.ini
这个.user.ini 一定要删掉,不然怎么配置都是报错500
删除方法:
在 根目录,即 .user.ini 所在目录
chattr -i .user.ini
rm .user.ini