Das folgende Umschreiben führt http://example.com/
zu http://example.com/www/www.example.com/public_html
anstelle von http://www.example.com/
. /www/www.example.com/public_html
ist der DocumentRoot
.
# Rewrite Rules for Example
RewriteEngine On
RewriteBase/
# Redirect from example.com to www.example.com
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
Diese Weiterleitung befindet sich in einem <VirtualHost *:80>
mit den Einstellungen:
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@example.com
Options +FollowSymLinks
DocumentRoot/www/www.example.com/public_html
and the rewrite is inside <Directory/>
Irgendwelche Ideen, warum dies so wäre? Ich habe mir das Apache-Handbuch angesehen und besagt, dass mit ${HTTP_HOST}
in Ihrem RewriteCond
der Host dem RewriteRule
Das Problem war <Directory/>
. Nachdem ich es auf <Directory/www/www.example.com/public_html>
aktualisiert hatte, hat es gut funktioniert.