Beziehungsprobleme bei .htaccess und Confixx
RewriteEngine on
RewriteRule home.html$ index.php?pid=0001
RewriteRule ueberuns.html$ index.php?pid=0002
Auf meiner Spielweise, wo meine Testwebs laufen (in diesem Falle /srv/www/htdocs/web0/….. funktionierte alles) das Basis-Web, das Confixx ohne weitere Extra-Einstellungen bereit hält. Gut Zureden half nicht, Streicheleinheiten auch nicht.. Nach stundenlangem Googlen fand ich folgenden Therapieansatz in verschiedenen Foren:
Confixx ergänzt httpd.con (/etc/apache2/…) durch die Includes confixx_mhost.conf, das seinerseits confixx_vhost.conf einbettet, und zwar in dieser Reihenfolge. Nun steht in httpd.conf noch ganz richtig:
# forbid access to the entire filesystem by default
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory> # use .htaccess files for overriding,
AccessFileName .htaccess
# and never show them
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
In dem zweiten Abschnitt <Files…> steht explizit, dass .htaccess verwendet werden soll, um den Verzeichniszugriff zu steuern bzw. zu überschreiben, da er ja in dem ersten Abschnitt <Directory /> zunächst rigoros unterbunden wird.
In confixx_mhost.conf finden sich die folgenden Einträge:
<IfModule mod_rewrite.c>
RewriteEngine On
Options +FollowSymlinks
womit symbolische Links erlaubt werden, was etwas weiter unten nochmals steht
<VirtualHost xx.xxx.xxx.xx:80>
ServerName h12345.serverkompetenz.net
#User confixx
#Group confixx
DocumentRoot /srv/www/htdocs/confixx/html
Options FollowSymLinks
und somit auch für virtuelle Hosts, also die verschiedenen Kunden (Websites) auf dem Server gilt. Bis hierher
funktioniert meine .htaccess auch.
Die Einschränkung findet in der confixx_vhost.conf statt, in der sämtliche virtuellen Server individuell eingestellt sind, nicht aber "web0". Für alle anderen virtuellen Hosts sieht der Eintrag standardmäßig so aus:
<Directory "/srv/www/htdocs/web1/html">
Options -FollowSymLinks -SymLinksIfOwnerMatch
und genau hier werden nämlich die symbolischen Links explizit ausgeschaltet.
<IfModule mod_access.c>
Allow from all
</IfModule>
</Directory>
Es reicht die Zeile
Options -FollowSymLinks -SymLinksIfOwnerMatch
zu löschen (auszukommentieren) und .htaccess Rewrite funzt.
Ja so ist det mit den Beziehungskisten, wenn der Eene nich will, kann der andere ooch nüscht dafür.




Widgets
