Ich habe Lampe auf einem UBUNTU 12.04 64-Bit-Server mit tasksel installiert. Alles funktioniert ordnungsgemäß. Aber jetzt habe ich festgestellt, dass pro-Verzeichnis. Htaccess Apache überschreiben Sache funktioniert nicht.
Ich habe über Google nach der möglichen Ursache gesucht.
http://www.cyberciti.biz/faq/apache-htaccess/
http://smartwebdeveloper.com/apache/htaccess-problems
Aber keiner von ihnen funktioniert.
Ich muss domain.com auf www.domain.com umleiten. Also verwende ich den folgenden Code in meiner .htaccess-Datei im Server-Root
<IfModule mod_rewrite.c>
# Enable Rewrite Engine
RewriteEngine On
RewriteBase /
# Redirect to www.
RewriteCond %{HTTP_HOST} ^domain.com$
RewriteRule (.*) http://www.domain.com/$1 [R=301,L]
</IfModule>
Konfiguration des virtuellen Apache-Hosts:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride ALL
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride ALL
Order allow,deny
allow from all
</Directory>
...........................
...........................
...........................
apacha2.conf hat folgendes:
AccessFileName .htaccess
#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<Files ~ "^.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>
Antworten:
1 für die Antwort № 1Alles sieht so aus, als wäre es richtig eingerichtet, also sind die Chancen gut mod_rewrite
ist nicht aktiviert. Versuche zu laufen sudo a2enmod rewrite
vom Terminal aus.
Vergessen Sie auch nicht, Apache neu zu laden (sudo service apache2 reload
) und starte Apache neu (sudo service apache2 restart
) nachdem Sie Änderungen an den aufgelisteten Dateien vorgenommen haben (nicht .htaccess
Dateien, da sie bei jeder Anfrage gelesen werden, aber den Rest der Dateien, die Sie aufgelistet haben).
HTH. :)