PHP MVC单入口

空扰寡人 提交于 2019-12-30 10:03:12

ThinkPHP去除url中的index.php

看到ThinkPHP路径中没有index.php会很诧异,怎么实现的?其实很简单,使用了apache的url重写功能。

ThinPHP URL去index.php

例如你的原路径是http://localhost/app/index.php/module/action/var/value/
那么现在的地址是 http://localhost/app/module/action/var/value/

去除index.php

1. httpd.conf配置文件中加载了mod_rewrite.so模块 //在APACHE里面去配置

#LoadModule rewrite_modulemodules/mod_rewrite.so把前面的警号去掉

2. AllowOverride None 讲None改为All //在APACHE里面去配置 (注意其他地方的AllowOverride也统统设置为ALL)

AllowOverride none 改 AllowOverrideALL
Options None
Order allow,deny
Allow from all

3. 确保URL_MODEL设置为2,在项目的配置文件里写

return Array(
'URL_MODEL' =>'2',
);

4. htaccess文件必须放到跟目录下

这个文件里面加:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!