一个TP5的项目,下载下来后台登陆访问http://www.cailing.com/adapi/passport/login报404,但访问http://www.cailing.com/index.php/adapi/passport/login却没有问题,所以察觉到是web服务器重写隐藏index.php的问题
因为我本地用的nginx服务器所以需要在配置文件的location中加入修改完成后重启下服务器
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
如果是apache的话
- 修改httpd.conf配置文件,LoadModule rewrite_module modules/mod_rewrite.so 去掉前面#使rewrite 模块生效
- 修改httpd.conf中所有AllowOverride None 将None改为 All
- 在项目入口文件目录下的.htaccess文件中(没有就新建一个)
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>
如果用的phpstudy的话
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]
</IfModule>