
Ich habe eine .htaccess-Datei im Verzeichnis /var/www/html/htc mit spezifischen Regeln für bookmatic.net und eine weitere .htaccess-Datei mit allgemeinen Regeln für alle Domänen in /var/www/html
Beim Zugriff auf bookmatic.net funktioniert die .htaccess-Datei in /htc einwandfrei, die in /html wird jedoch ignoriert. Kann jemand helfen?
Die Spezifikationen von bookmatic.net in httpd.conf lauten wie folgt:
<VirtualHost *:443>
ServerName bookmatic.net
ServerAlias *.bookmatic.net
DocumentRoot /var/www/html/htc
AllowEncodedSlashes On
<Directory /var/www/html/htc>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
LimitRequestBody 25000000
LimitXMLRequestBody 25000000
</Directory>
RewriteEngine on
</VirtualHost>
Antwort1
AllowOverride All
.htaccess
ist die Anweisung, die Apache anweist, in Dateien nach weiteren Konfigurationen zu suchen .
Dieser virtuelle Host weist Apache an, tiefer nach .htaccess
Dateien zu suchen, damit die Datei in nicht verdeckt wird ./var/www/html/htc
.htaccess
/var/www/html
Eine Möglichkeit, dies zu lösen, besteht darin, einen weiteren Block wie diesen zu erstellen (möglicherweise in httpd.conf
statt in diesem vhost, wenn das sinnvoller ist):
<Directory /var/www/html>
AllowOverride All
</Directory>
Antwort2
Sie haben AllowOverride All
für <Directory /var/www/html/htc>
. Ich nehme an, es ist in nicht erlaubt /var/www/html
. Sie könnten Folgendes versuchen:
<Directory /var/www/html>
AllowOverride All
</Directory>