RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond $1 !^(index\.php|images|robots\.txt)

RewriteRule ^(.*)$ /index.php/$1 [L]

意思是:

  • 第一行、将RewriteEngine引擎设置为on,就是让url重写生效;
  • 第二行、 如果文件存在,就直接访问文件,不进行下面的RewriteRule.
  • 第三行、 如果目录存在就直接访问目录不进行RewriteRule
  • 同理: RewriteCond %{REQUEST_URI} !^.*(\.css|\.js|\.gif|\.png|\.jpg|\.jpeg)$ #如果是这些后缀的文件,就直接

  • 访问文件,不进行Rewrite

  • 第四行、配置url重写规则,!^(index\.php|images|robots\.txt) 这个正则表达式指明了哪些文件不需要重写,而是直接访问;
  • 第五行、^(.*)$是一个正则表达式,意思是对所有请求都发送到/index.php/$1,熟悉url的人都知道,以反斜杠(/)开头的,都是相对路径,相对于谁呢?根,也就是网址。

原来自己到网站访问到URL是这样到:http://网址/index.php?/控制器/函数,现在想去掉index.php?,这里index.php后面还多了一个问号,好烦人的,结果文件建好后,输入网址访问,报了nginx 404错误,我的nginx是1.4.7版本

后来经过多方寻找,终于搞定了,打开nginx到配置文件nginx.conf,在server 部分加入以下命令

if (!-e $request_filename) { 
      rewrite ^.*$ /index.php last; 
    }

保存后,重启nginx (/etc/init.d/nginx restart) ,再输入没有带index.php?的网址,真到可以访问了

最新文章

  1. 理解 OpenStack 高可用(HA)(3):Neutron 分布式虚拟路由(Neutron Distributed Virtual Routing)
  2. 阿里云 centos 安装apache和php
  3. Android Framework框架_转
  4. Inno打包教程_百度经验
  5. 国内Lua先驱的Lua源码总结
  6. G - A+B for Input-Output Practice (VI)
  7. SQL 2008 如何配置远程连接
  8. Java面试题之数据库三范式是什么
  9. JavaEE Tutorials (11) - 使用Criteria API创建查询
  10. JS脚本显示当前日期+星期几[转]
  11. UVA - 817 According to Bartjens
  12. Python机器学习包
  13. GPS定位开发
  14. asp Vernum
  15. Keil MDK从未有过的详细使用讲解
  16. HDU2256(矩阵)
  17. Django积木块11 —— 缓存
  18. json&pickle序列化和软件开发规范
  19. CocoaPod 使用(I)
  20. 判断闰年的Java算法

热门文章

  1. Day6 - K - 陌上花开 HYSBZ - 3262
  2. C语言循环
  3. 031、Java中偶数偶数的判断方法
  4. C++连接sqlite数据库的坑
  5. Docker常用命令,Docker安装Nginx、Redis、Jenkins、tomcat、MySQL
  6. Day4-T2
  7. Flutter Windows下AndroidStudio环境搭建
  8. 四十七、在SAP中,把功能区块整合成一个函数,通过调用函数的办法使代码简洁明了
  9. ubuntu12.04安装JDK8
  10. [题解] LuoguP4827 [国家集训队] Crash 的文明世界