在根目录的.htaccess文件中添加
<IfModule mod_rewrite.c> # 是否存在rewrite模块
Options +FollowSymlinks -Multiviews # +遵循此目录中的符号链接 -内容协商(服务器在其中进行隐式文件名模式匹配,然后从结果中进行选择)
RewriteEngine On # 启用rewrite引擎
RewriteCond %{REQUEST_FILENAME} !-d # 是否存在目录
RewriteCond %{REQUEST_FILENAME} !-f # 是否存在文件
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] # 正则表达式,替换url
# QSA:合并被替换的url?后的参数与新的url?后的参数(上面例子中没有新的参数)
# PT:让apache将其看作是URI来对待(否则认为是路径),其他规则重新处理生成的url
# L:能够使得mod_rewrite 停止处理规则集(只限于当次停止,因为PT设置可能会导致循环处理)
</IfModule>
相关链接:
请注意:以下链接中的解决方案复制功能似乎存在问题,代码中的空格被隐式替换成了?,具体可在notepad++等工具中查看。
路由之后 必须带index.php