我的输入网址需要index.php才能工作
例如,http://example.com/index.php/classname/function
如何将其更改为http://example.com/classname/function
[解]
删除我的配置中的index.php ['uri'] =“index.php”;
将.htaccess作为下面提到的Brendan添加到“system”所在的同一文件夹中
它工作然后! :-D
答案 0 :(得分:2)
在.htaccess文件中:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
有关mod_rewrite的更多信息:http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html
答案 1 :(得分:1)
.htaccess(检查是否启用了mod_rewrite)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
以及index.php
中的类似内容$request = trim($_SERVER['REQUEST_URI'], "/\/\\ \t\n\r\0\x0B");
$qPos = strpos($request, '?');
$route = explode('/', substr($request, 0, $qPos===false ? 1024 : $qPos));
答案 2 :(得分:0)
http://www.slimframework.com/除了.htaccess之外,您可能会对此感兴趣。 :)
Slim提供了非常好的路由功能。