Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP].htacces problem z wyrażeniem
Forum PHP.pl > Forum > Przedszkole
Thomaz2008
Witam 

mam taki oto problem: chce aby adres http://subdomena.domena.pl/aaa/bbbb/ccc_cccc_ccc  powodował wywołanie adresu http://domena.pl/test.php

mój zapis z .htaccess

Kod
RewriteRule ^(.+)\.domena\.pl/(.+)/(.+)/(.+)$ domena\.pl/test\.php


niestety powyższy zapis nie działa, może ktoś wie gdzie mam błąd??
Maxik
A masz włączony WildCard na domenę?
Thomaz2008
w nazwa.pl chyba domyślnie powinien być włączony??
erix
Nie gdybaj, tylko sprawdź. Powinno być w panelu. Jeśli nie - mail do administracji, gdzie masz DNS.

Cytat
niestety powyższy zapis nie działa, może ktoś wie gdzie mam błąd??

Nie działa, tzn? Nie znaleziono hosta, czy po prostu reguła nie działa?
Maxik
Przy okazji: w adresie na który przepisujesz nie musisz escape'ować kropek, zamień więc "\." na "."
Thomaz2008
Ok Wildcard jest włączony dla domeny

moja prowizorka :

Kod
RewriteEngine on
RewriteRule .*\.(html|gif|jpg|png|css|js|ico|jpeg|swf) - [L]
RewriteCond %{HTTP_HOST} ^www.domena.pl [or]
RewriteCond %{HTTP_HOST} ^domena.pl
RewriteRule (.*) http://domena.pl/index.html [R=301,L]
RewriteRule .* test.php



chce aby odwołanie www.domena.pl wywoływało plik index.html  a wszystkie inne np http://subdomena.domena.pl/aaa/bbb/ccc_ccc wywoływało plik test.php

jednak co jakiś czas wywala mi błęd 500 (nie zawsze), myśle żebłąd jest gdzieś w htaccess , może ktoś pomógłby mi przepisać powyższą komende na bardziej poprawną.

Pozdrawiam
erix
Cytat
chce aby odwołanie www.domena.pl wywoływało plik index.html a wszystkie inne np http://subdomena.domena.pl/aaa/bbb/ccc_ccc wywoływało plik test.php

Cytat
jednak co jakiś czas wywala mi błęd 500 (nie zawsze)

To jest cały htaccess?
Thomaz2008
Troche to zawiłe opisze dokładniej

cały htacces wygląda tak

Kod
RewriteEngine on
RewriteRule .*\.(html|gif|jpg|png|css|js|ico|jpeg|swf) - [L]
RewriteCond %{HTTP_HOST} ^www.domena.pl [or]
RewriteCond %{HTTP_HOST} ^domena.pl
RewriteRule (.*) http://domena.pl/index.html [R=301,L]
RewriteRule .* test.php




cel:

przy wywołaniu www.domena.pl lub domena.pl wyświetla sie plik index.html (zrobiłem przekierowanie 301 na adres  http://domena.pl/index.html lecz to raczej najmniej poprawne rozwiązanie)

przy wywołaniu wszystkich innych adresów (a szczególnie interesuje mnie adres typu http://subdomena.domena.pl/aaa/bbb/ccc_ccc)  wyświetlały (wykonywały) plik test.php  do tego służy odwołanie 

Kod
RewriteRule .* test.php


ale myśle że gryzie sie z tym 

Kod
RewriteRule (.*) http://domena.pl/index.html [R=301,L]


przez co powoduje błąd 500

oprogramowanie php sprawdzałem na localhoście i nie powoduje błędów więc wnioskuje że błąd jest w pliku .htacces
erix
RewriteCond działają tylko dla najbliższego RewriteRule.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.