看到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]