您当前的位置:首页 > 建站知识 > 编程知识

rewrite模式设置方法

发布时间: 2018-01-27 │ 浏览:4200 

在ThinkPHP开发中,会提到路由模式。

最佳方式就是rewrite模式,
即把pathinfo模式
http://www.workneed.com/index.php/home/index/index
改成rewrite模式
http://www.workneed.com/home/index/index

首先在网站目录下新建文件【.htaccess】,此文件为Apache服务器的分布式配置文件
贴上以下代码:
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [L]

代码的含义是当请求的URL不存在时,会重定向到index.php文件。
即当访问
http://www.workneed.com/home/index/index
时,会自动转化为
http://www.workneed.com/index.php/home/index/index

【.htaccess】文件的作用就在于此。

接下来,在ThinkPHP项目中的Application/Common/Conf/config.php加配置项:

'URL_ROUTER_ON' => true

即开启路由


最后,打开Apache目录下的conf/httpd.conf文件
找到
#LoadModule rewrite_module modules/mod_rewrite.so
把前面的#号去掉。
再找
AllowOverride None
把None改为all,即
AllowOverride all
这里需要注意,AllowOverride None有多处,只改独立成行的这个即可,其它处不用改。

重启Apache,大功告成了。