ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php

Posted 终极用户

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php相关的知识,希望对你有一定的参考价值。

URL重写

通常的URL里面含有index.php,为了达到更好的SEO效果可能需要去掉URL里面的index.php ,通过URL重写的方式可以达到这种效果,通常需要服务器开启URL_REWRITE模块才能支持。 下面是Apache的配置过程,可以参考下:

1、httpd.conf配置文件中加载了mod_rewrite.so模块

2、AllowOverride None 将None改为 All

3、确保URL_MODEL设置为2

4、把下面的内容保存为.htaccess文件放到入口文件的同级目录下

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

重启Apache之后,原来的 http://serverName/index.php/Blog/read/id/1 就可以通过访问 http://serverName/Blog/read/id/1 简化了URL地址。

以上是关于ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php的主要内容,如果未能解决你的问题,请参考以下文章

ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php

thinkphp5里面.htaccess文件为空为啥也能隐藏入口文件?

thinkphp中.htaccess文件的巧妙运用

thinkphp 怎么通过.htaccess 显现伪静态

如何配置thinkphp的伪静态重写

thinkphp url重写,我想把模块隐藏掉只显示操作名