thinkphp 重写

简介: 我们知道,在thinkphp的案例中有一个.htaccess文件,里面配置了URL的一些重写规则,如:   RewriteEngine on  RewriteCond %{REQUEST_FILENAME} !-d  RewriteCond %{REQUEST_FILENAME} !-f  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]   它的作用就是设置URL重写以隐藏URL中含有的index.php。

我们知道,在thinkphp的案例中有一个.htaccess文件,里面配置了URL的一些重写规则,如:


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

 

它的作用就是设置URL重写以隐藏URL中含有的index.php。一般来说URL过长或者动态化的URL都不利于SEO因此隐藏的目的就是要达到更好的SEO效果。
     明白了.htaccess文件的作用,接下来就是让它工作起来。
要使.htaccess文件起作用,通常需要服务器开启URL_REWRITE模块才能支持。


下面是Apache的配置过程:

1、httpd.conf配置文件中加载了mod_rewrite.so模块
    在httpd.conf配置文件搜索 LoadModule rewrite_module modules/mod_rewrite.so (Apache2是这个)去掉前面的#

2、AllowOverride None 将None改为 All
    在httpd.conf配置文件找到“AllowOverride None”将None改为 All。这点值得注意的是,“AllowOverride None”在文件中能找到几处,但要改的却只有一处。如图所示:

3、确保项目(一般是前台项目)配置文件的URL_MODEL设置为2

4、把.htaccess文件放到入口文件的同级目录下

目录
相关文章
|
4月前
|
PHP
PHP中抽象类怎么用?
【7月更文挑战第2天】PHP中抽象类怎么用?
18 0
|
4月前
|
PHP
PHP 接口和继承的异同?
【7月更文挑战第2天】PHP 接口和继承的异同?
30 0
PHP的重写和重载是干什么的?区别是什么?底层原理是什么?
PHP的重写和重载是干什么的?区别是什么?底层原理是什么?
155 0
PHP为什么要有继承?底层原理是什么?
PHP为什么要有继承?底层原理是什么?
124 0
PHP为什么一个类只能继承一个抽象类?底层原理是什么?
PHP为什么一个类只能继承一个抽象类?底层原理是什么?
211 0
|
存储 PHP
PHP重的重载和重写的区别是什么?底层原理是什么?
PHP重的重载和重写的区别是什么?底层原理是什么?
156 0
|
PHP 开发者
PHP 继承——重写 Override|学习笔记
快速学习 PHP 继承——重写 Override
PHP 继承——重写 Override|学习笔记
|
PHP 开发者
PHP 继承学习路径|学习笔记
快速学习 PHP 继承学习路径
|
PHP
【PHP报错集锦】继承抽象类时的报错
【PHP报错集锦】继承抽象类时的报错
130 0
【PHP报错集锦】继承抽象类时的报错
ThinkPHP3.2.3 where注入
ThinkPHP3.2.3 where注入
137 0
ThinkPHP3.2.3 where注入