Ich versuche, die .htaccess-Datei zu verwenden, um PHP-Erweiterungen zu verbergen, aber das scheint nicht zu funktionieren. Es funktioniert, wenn sich im Verzeichnis eine HTML-Datei befindet und ich die Erweiterung .html nicht verwende.
Das ist, was ich habe.
RewriteEngine On
RewriteBase /
RewriteRule ^([^/.]+)$ $1.php [L]
Also
http://www.mydomain.com/test
Sollte zur Sprache bringen.
http://www.mydomain.com/test.php
Es sagt:
Not Found
The requested URL /test was not found on this server.
Antwort1
In der Konfigurationsdatei für die Site konnte ich das Problem beheben, indem ich MultiViews entfernte. Danach funktionierte alles wieder normal.
Antwort2
Ich habe meinen eigenen HomeServer mit Ubuntu Server und so habe ich es gemacht.
Sie müssen die Apache2-Konfigurationsdatei bearbeiten, die sich in
/etc/apache2/apache2.conf
sudo nano /etc/apache2/apache2.conf
Sie müssen die Zeile bearbeiten, sodass sie wie folgt aussieht:
<Directory /var/www/html/> Option Indexes FollowSymbLinks AllowOverride None Require all granted </Directory>
Sie müssen das
AllowOverride None
durch ersetzenAllowOverride All
und dann den Umschreibmodus in Apache2 im Terminal aktivieren:sudo a2enmod rewrite
Starten Sie dann den Apache-Dienst neu
sudo service apache2 restart
Versuchen Sie es jetzt, es sollte funktionieren.