nginx+CI框架 404的问题

在apache下访问index.php/welcome/index能够吧index.php后面的部分作为参数传递给index.php文件,CI框架解析后会去调用Welcome控制器下的index方法。
但是在nginx下会当把index.php作为目录名而不是文件名,所以会报404 Not Found

我的解决方法是通过url重写来实现,重写规则如下:

# 保留index.php入口文件
if (!-e $request_filename) {
    rewrite ^index.php/(.*)$ /index.php?$1 
}

# 隐藏index.php入口文件
if (!-e $request_filename) {
    rewrite ^(.*)$ /index.php?$1 
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • nginx重写规则 nginx rewrite 正则表达式匹配 大小写匹配 ~ 为区分大小写匹配 ~* 为不区分大...
    桖辶殇阅读 10,922评论 0 2
  • Nginx简介 解决基于进程模型产生的C10K问题,请求时即使无状态连接如web服务都无法达到并发响应量级一万的现...
    魏镇坪阅读 6,389评论 0 9
  • [toc] 在公司的网站上推荐使用 docker 容器来安装环境,一个项目一个 docker 容器。 、、 百度百...
    Mdvtrw阅读 5,379评论 0 1
  • CodeIgniter框架安装很简单,只需要到CodeIgniter官网将压缩包下载下来解压,放到服务器根目录即可...
    zhou阅读 10,683评论 1 11

友情链接更多精彩内容