我试图制作SEF网址,但.htaccess
不起作用。我使用了来自不同网站的各种代码,但没有任何作用。
奇怪的是我有Joomla!在我的localhost上它工作得很好。 URL重写不适用于Joomla! (它不会删除index.php文件)但它有像localhost / mywebsite / about-us这样的SEF URL。
我提到Joomla!只是为了让您知道SEF URL在我的localhost上运行,与Web应用程序无关。
那我怎么解决这个问题呢? 我尝试的最后一个是这样的:
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+)$ /$1.php [L,QSA]
答案 0 :(得分:1)
您是否在Apache上为您的应用程序文件夹设置了覆盖允许?如果你已经启用了mod_rewrite,那么应该是这种情况。
AllowOverride All
在.htaccess文件中尝试类似deny from all
的内容,查看该文件是否实际上是由Web服务器读取的。如果.htaccess文件中只有deny from all
,则应该为任何文件获取禁止消息。这将帮助您了解您的.htaccess文件是否正在由您的Web服务器读取。