Ich habe eine Drupal-Multisite-Installation, die super funktioniert. Seit ich sie eingerichtet habe, nervt mich das und ich versuche herauszufinden, warum das nicht funktioniert.
Wenn ich Apache neu lade, erhalte ich die folgende Fehlermeldung, wenn ich die Zeile „Include conf.d/ip.conf“ unkommentiert habe:
allow not allowed here
...fail!
Wenn ich die IP-Adressen wie unten angegeben angebe (sie sind derzeit auskommentiert), funktioniert es!
Ich wäre für jeden Ratschlag oder jede Hilfe sehr dankbar (dies sind offensichtlich nicht die IP-Adressen, die ich verwende).
<Directory "/home/d/r/drupal/web/public_html">
AllowOverride none
# Define file limitations on drupal files
<FilesMatch "(install.php|cron.php|update.php|\.txt)$">
Order deny,allow
#=================================================================
# THIS DOES NOT WORK? I GET AN ERROR RESTARTING APACHE FOR IP.CONF
Include conf.d/ip.conf
#=================================================================
# SO I MANUALLY ADD THE IP ADDRESSES HERE:
#Allow from 123.123.123.123
#Allow from 222.222.222.222
#Allow from 555.555.555.555
Deny from all
</FilesMatch>
<FilesMatch "robots.txt">
Allow from all
</FilesMatch>
# Read in Drupal default .htaccess file asif conf - easier CVS management
Include /home/d/r/drupal/web/public_html/.htaccess
# Offline mode for multisite setup - see file for more info
# Uncomment the line below to set sites offline
# Include conf.d/offline.conf
</Directory>
# Sorry, no svn peeking
<DirectoryMatch "\.svn">
# Currently pointing back to drupal
# High traffic sites might want custom
# error pages, no need to load drupal
ErrorDocument 403 /index.php
Order allow,deny
Deny from all
Satisfy All
</DirectoryMatch>
# Allow the .htacces files to be used in the sites folder where /files are stored
<Directory "/home/d/r/drupal/web/public_html/sites">
AllowOverride
</Directory>
ip.conf sieht folgendermaßen aus:
Allow from 123.123.123.123
Allow from 222.222.222.222
Allow from 555.555.555.555
Antwort1
Dieses Problem wurde dadurch verursacht, dass apache2.conf alle Dateien in conf.d (include conf.d/*) lud, was bedeutete, dass ip.conf an der falschen Stelle geladen wurde. Dies bedeutete, dass die allow from
Anweisungen außerhalb des Kontexts verarbeitet wurden.