用tp框架在本地开发了项目时,用的是phpstudy继承环境,起初用的是apache服务器,但是切换到nginx环境时只有主页能访问,其他都会报nginx404的错误 当时也挺纳闷的,经分析得出原因:原网站环境为wamp使用了伪静态,伪静态规则写在网站根目录的.htaccess文件中,Apache下默认识别此文件内容,而Nginx服务器不识别.htaccess文件,导致伪静态规则无效,自然无法解析url地址,导致404错误(文件不存在)
解决方式,首先修改配置文件vhost文件 进行路径重写配置 代码奉上 问题得到解决哦,今天再次更新了哈
server {
listen 80;
server_name www.zztp5.com;
root "D:/phpstudy_pro/WWW/xiaoming/public";
location / {
index index.html index.htm index.php;
#autoindex off;
// if和()中间需要有空格,()和{}中间需要有空格 phpstudy8.0以上踩的坑,不知道别人是不是,反正我是~
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
// 主要就是这里,哈哈哈~
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
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;
}
}