最近在做一个项目 采用的是双入口前台index.php后台admin.php在部署到服务器的时候出现了Access denied
下面说一下怎么解决的:
第一步 检查URL_MODEL是什么模式
第二步 检查php.ini配置文件找到cgi.fix_pathinfo的值改成1
第三步 配置nginx(加红色关键部分)
server {
listen 80;
server_name ****.com;
root /data/wwwroot/default/aaa;
location / {
index index.htm index.php;
#autoindex off;
if (!-e $request_filename) {
rewrite /admin.php(.*)$ /admin.php$1 last;
rewrite ^(.*)$ /index.php/$1;
break;
}
}
location ~ [^/]\.php(/|$) {
#fastcgi_pass remote_php_ip:9000;
fastcgi_pass unix:/dev/shm/php-cgi.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_index index.php;
include fastcgi.conf;
}
}