我尝试使用 .htaccess 文件来隐藏 php 扩展名,但似乎不起作用。如果目录中有一个 html 文件并且我不使用 .html 扩展名,则它可以工作。
这就是我所拥有的。
RewriteEngine On
RewriteBase /
RewriteRule ^([^/.]+)$ $1.php [L]
所以
http://www.mydomain.com/test
應該提出來。
http://www.mydomain.com/test.php
它说:
Not Found
The requested URL /test was not found on this server.
答案1
在网站的 conf 文件中,我可以通过删除 MultiViews 来解决这个问题。然后它就开始正常工作了。
答案2
我有自己的带有 Ubuntu Server 的家庭服务器,这就是我的做法。
您需要编辑位于的 apache2 配置文件
/etc/apache2/apache2.conf
sudo nano /etc/apache2/apache2.conf
您必须编辑如下行:
<Directory /var/www/html/> Option Indexes FollowSymbLinks AllowOverride None Require all granted </Directory>
您需要将 替换
AllowOverride None
为AllowOverride All
,然后需要在终端中启用 apache2 中的重写模式:sudo a2enmod rewrite
然后重新启动 apache 服务
sudo service apache2 restart
现在尝试一下,它应该有效。