Nginx+CI出现404异常
程序员文章站
2022-04-22 19:14:43
...
Nginx+CI出现404错误
最近刚学ci框架,做了个简单的项目,在本地搭服务器的环境都调通了,但是部署到远程服务器时:
http://example.com/(index.php)/ 可以访问(为配置的默认controller-class)
http://example.com/(index.php)/[controller-class]/[controller-method] 不可以访问(提示404错误!)
最后百度原因:
对于/index.php/abc这种url,Apache和Lighttpd会按”index.php?abc”来解释,而nginx会认为是请求名字是“index.php”的目录下的abc文件的内容。所以CI在nginx下不配置rewrite是无法运行的,而在Apache和Lighttpd则正常。
解决方案(要点加粗,重点标红):
1 server { 2 listen 80; 3 server_name example.com; 4 root /data/wwwroot/example/ 5 index index.php index.html index.htm; 6 7 location ~* \.(css|js|swf|htm|jpg|png|gif|json|atlas)?$ { 8 expires 1d; 9 add_header Pragma public;10 add_header Cache-Control "public";11 }12 13 location /controller-class/ {14 if (!-e $request_filename) {15 rewrite ^/controller-class/(.*)$ /controller-class/index.php?q=$uri&$args;16 }17 }18 19 location ~ \.php$ {20 fastcgi_pass 127.0.0.1:9000;21 fastcgi_index index.php;22 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;23 fastcgi_param PHP_VALUE open_basedir=$document_root:/tmp/:/proc/;24 include fastcgi_params;25 }26 27 }
参考资料:http://www.2cto.com/os/201301/185926.html【Nginx+CI出现404错误问题】
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
推荐阅读
-
laravel 框架配置404等异常页面
-
SQLserver2000 企业版 出现"进程51发生了严重的异常"错误的处理方法
-
IIS下调用证书出现异常的解决方法 (C#)
-
Spring事务管理只对出现运行期异常进行回滚
-
SQL Server出现System.OutOfMemoryException异常的解决方法
-
程序异常退出是什么原因(0x40000015装系统出现c报错)
-
404 not found是什么意思?为什么会出现404 not found页面以及如何解决?
-
Android 加载大图及多图避免程序出现OOM(OutOfMemory)异常
-
格式导致的Excel导入sql出现异常的解决方法
-
java 集合并发操作出现的异常ConcurrentModificationException
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论