我正在努力让干净的网址与我的网站一起工作,但我遇到了问题
我已经关注了很多教程,我确信我的.htaccess
文件配置正确。
.htaccess内容
RewriteEngine On
RewriteRule ^([a-z]+)/([a-z\-]+)$ /$1/$2.php [L]
我在ubuntu服务器上运行apache,.htaccess位于站点根文件夹,文件夹结构如下所示:
文件夹结构
/var/www/lim/
/var/www/lim/index.php
/var/www/lim/.htaccess
我可能做错了什么?
答案 0 :(得分:1)
使用.htaccess,您必须使用RewriteBase指令,例如
RewriteBase /
如果内容位于http://www.yoursite.com/lim子目录中,则必须使用
RewriteBase /lim
如果省略RewriteBase,则在重写期间会添加文件路径。
答案 1 :(得分:1)
我认为,另外,你的.htaccess应该将第二个路径组件重写为index.php的页面参数,如下所示:
RewriteEngine On
RewriteBase /
RewriteRule ^([a-z]+)/([a-z\-]+)$ /$1/index.php?page=$2 [L]
这样,http://yourserver.com/lim/mypage
之类的网址就会变成http://yourserver.com/lim/index.php?page=mypage
。