Ich habe eine Website in meinem /httpdocs-Verzeichnis mit eigenem htaccess eingerichtet und ich habe einen WordPress-Blog in /httpdocs/blog, der den Standard-Wordpress-htaccess verwendet
Ich sehe immer den folgenden Fehler in meinem Apache-Fehlerprotokoll:
[error] [client #.#.#.#] Die Optionen FollowSymLinks oder SymLinksIfOwnerMatch sind deaktiviert, was bedeutet, dass die RewriteRule-Direktive verboten ist: /var/www/vhosts/somedomain.com/httpdocs/blog/index.pl
Ich habe “Options +FollowSymLinks” hinzugefügt, da dies das Problem für andere (aber nicht für mich) behoben zu haben scheint.
Die Haupt-.htaccess lautet wie folgt:
Der WordPress-.htaccess lautet:
Options +FollowSymLinks
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPres
Ich frage mich auch, warum der Fehler als “index.pl” gemeldet wird, da es keine Perl-Skripte in /blog gibt. Also habe ich nach einigem Suchen eine httpd.include-Datei (von Plesk generiert) in /var/www/vhosts/somedomain/conf/ gefunden, die einige Perl-Handler-Sachen enthält:
SetHandler perl-script PerlHandler ModPerl::Registry Options ExecCGI erlaubt von allen PerlSendHeader On
Wenn ich die Perl-Unterstützung über Plesk entferne und damit den obigen Codeblock entferne, erhalte ich keine Fehler mehr.
Die offensichtliche Antwort wäre, Perl zu deaktivieren, da ich es nicht brauche, aber es muss eine Möglichkeit geben, diesen Fehler zu beheben, ohne das tun zu müssen?