PHP-访问控制器时,nginx上Codeigniter出现404错误

前端之家收集整理的这篇文章主要介绍了PHP-访问控制器时,nginx上Codeigniter出现404错误 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我在我的网站上使用Codeigniter,根网站运行正常,有一个登录页面,但是我在/var/www/domain.com/www/dev/中有一个开发部分,其中/var/www/domain.com / www /是根目录(登录页面存储在此处).

现在,当我转到domain.com/dev时,我的codeigniter网站可以正常运行,但是当我加载控制器时,例如domain.com/index.PHP/search它给了我404错误.

在domain.com的错误日志中,它显示如下:

2011/10/02 02:03:37 [error] 17042#0: *568 open() "/var/www/domain.com/www/dev/index.PHP/search" Failed (20: Not a directory),client: xx.xx.xx.xx,server: domain.com,request: "GET /dev/$

现在,我不知道为什么要这样做以及如何解决此问题.我如何才能停止此操作并删除“ index.PHP”,也要删除URL,因为Codeigniter教程仅包含apache的重写器,而在Nginx上无效.

最佳答案
我相信codeigniter使用前端控制器模式,它将使用重写规则将所有请求重定向到index.PHP.

由于重写规则是针对apache而非Nginx的,因此服务器实际上正在寻找一个名为search的目录,该目录位于另一个名为index.PHP的目录下,依此类推.

关于Nginx,我经验不足,但是我相信blog post可以帮助您提出有关Nginx的重写规则.

原文链接:https://www.f2er.com/nginx/532381.html

猜你在找的Nginx相关文章