Hová kell beírni a 301-es átirányítás kódját (Apache2, Virtualhosts)

Fórumok

Hová kell beírni a 301-es átirányítás kódját (Apache2, Virtualhosts)

A kód az alábbi:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain\.com
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=permanent,L]

Ilyet én a virtuális hostok könyvtáraiban (pl /var/www/myvirtualhost1) a htaccess.txt fájlokban látok.

De ha abba írom be, akkor nem működik az átirányítás. Apache újraindítás volt már.

Előre is köszönöm.

Hozzászólások

"htaccess.txt" fájl helyett ".htaccess" kell. Először próbáld így. Nevezd át.

Elvileg hozzáférek mindenhez, nem kell .htaccess.
Deeeee egyszerűen nem működik ha a /sites-available könyvtárban a virtual host fájlba írom be tagek közé és attól tartok, hogy ezt a /etc/apache2/apache2.conf fájlba írjam be.

Ubuntu 8.04 szerver, rajta Apache 2 fut.

Mit nézzek?

De azt mondasz...
merthogy a ^(.*)$ azt jelenti, hogy a:
%{REQUEST_URI}
^: illeszkedjen az elején
.*: azután következzen bármilyen karakter
$: és tartson az illeszkedés a végéig

Tehát a fenti példában a http://molnaristvan.eu/2011/06/23/a-nagy-syslog-ng-tutorial-i-tanuljunk… urlben a regexp erre illeszkedik:
/2011/06/23/a-nagy-syslog-ng-tutorial-i-tanuljunk-logolni-4/

----
올드보이
http://molnaristvan.eu/

Nezd meg, hogy a mod_rewrite be van-e toltve.

Ha a htaccess nem mukodik, akkor nezd meg hogy az AllowOverride be van-e kapcsolva a konyvtarra. Bar jobban jarsz - biztonsagosabb es gyorsabb - ha az AllowOverride None-ra van allitva mindenhol es konfigbol allitod be a redirectet.