htaccess,如何隐藏 php 扩展

htaccess,如何隐藏 php 扩展

我尝试使用 .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 的家庭服务器,这就是我的做法。

  1. 您需要编辑位于的 apache2 配置文件/etc/apache2/apache2.conf

    sudo nano /etc/apache2/apache2.conf
    
  2. 您必须编辑如下行:

    <Directory /var/www/html/>
      Option Indexes FollowSymbLinks
      AllowOverride None
      Require all granted
    </Directory>
    
    • 您需要将 替换AllowOverride NoneAllowOverride All,然后需要在终端中启用 apache2 中的重写模式:

      sudo a2enmod rewrite
      
  3. 然后重新启动 apache 服务

    sudo service apache2 restart
    

现在尝试一下,它应该有效。

相关内容