我正在嘗試使用 .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
我有自己的 HomeServer 和 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
現在嘗試一下,應該可以。