Problem z .htaccess i wildcard

Odpowiedz Nowy wątek
2011-07-19 18:07
Maciej
0

Witam,

Mam włączony wildcard dla domeny.

Mój plik .htaccess wygląda następująco:

Options FollowSymLinks
RewriteEngine On

ErrorDocument 404 /notfound.php

RewriteCond %{HTTP_HOST} ^www\.([^.]+)\.domena\.pl$ [NC]
RewriteRule .* http://www.domena.pl/?user=%1 [R,L]

Wszystko działa ok w przypadku www.nazwa.domena.pl, jednak problem pojawia się przy nazwa.domena.pl (bez www).

Pewnie głupi drobiazg, ale siedzę i szukam bezskutecznie...

Pozostało 580 znaków

2011-07-19 18:12
0

Tak, głupi drobiazg :P
Jeśli wyrażenie ma pasować również do domeny bez www, to zamiast ^www\. trzeba wpisać ^(www\.)?.

edytowany 1x, ostatnio: sirkruk, 2011-07-19 18:12

Pozostało 580 znaków

2011-07-19 18:35
Maciej
0

Dziękuję za szybką odpowiedź, po wprowadzeniu zmian strona nie wyświetla się, a przeglądarka pokazuje komunikat: Ta strona internetowa zawiera pętlę przekierowań.

Dla jasności plik .htaccess wygląda teraz tak:

Options FollowSymLinks
RewriteEngine On

ErrorDocument 404 /notfound.php

RewriteCond %{HTTP_HOST} ^(www\.)?.([^.]+)\.domena\.pl$ [NC]
RewriteRule .* http://www.domena.pl/red.php?user=%1 [R,L]

Próbowałem najpierw przekierować adres bez www na adres z www na zasadzie:

RewriteCond %{HTTP_HOST} ^domena.pl
RewriteRule (.*) http://www.domena.pl/$1 [R=301,L]

ale powyższa metoda nie działa dla adresów z subdomeną typu: nazwa.domena.pl

Pozostało 580 znaków

2011-07-19 18:40
0

O jedną kropkę za dużo, zamiast ^(www\.)?.([^.]+)\.domena\.pl$ wpisz ^(www\.)?([^.]+)\.domena\.pl$.

EDIT:
Poza tym lepiej dla jednej domeny (z www, lub bez www) dać przekierowanie do drugiej.

edytowany 3x, ostatnio: sirkruk, 2011-07-19 18:42

Pozostało 580 znaków

2011-07-19 18:47
Maciej
0
Options FollowSymLinks
RewriteEngine On

ErrorDocument 404 /notfound.php

RewriteCond %{HTTP_HOST} ^(www\.)?([^.]+)\.domena\.pl$ [NC]
RewriteRule .* http://www.domena.pl/red.php?user=%1 [R,L]

I cały czas ten sam komunikat mi wywala...

Pozostało 580 znaków

2011-07-19 18:51
0

Zmień jeszcze http://www.domena.pl/red.php?user=%1 na http://www.domena.pl/red.php?user=%1.

Pozostało 580 znaków

2011-07-19 19:36
Maciej
0
sirkruk napisał(a)

Zmień jeszcze http://www.domena.pl/red.php?user=%1 na http://www.domena.pl/red.php?user=%1.

Tzn. ? Chyba zapomniałeś czegoś dopisać...

Pozostało 580 znaków

2011-07-20 15:40
0

Tak, zapomniałem, zamiast %1 wpisz %2, czyli http://www.domena.pl/red.php?user=%2.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0