![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 31 Pomógł: 0 Dołączył: 1.02.2007 Skąd: Sanok Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Robie strone wielojezyczna z przyjaznymi linkami. Linki beda zawierac rozne znaki np. cyrylice. Zrobilem sobie htaccessa ale wywala mi blad internal serwer error 500:
Blad jest gdy uzyje .* wraz z QSA. Pojawia sie na serwerze home.pl Niestety nie mam podgladu logow zeby sprawdzic o co kaman. Sprawdzilem tez tego htaccessa na ovhost i stronka sie odpala ale nie laduja sie zadne pliki graficzne, style, js'y. Jak mozna zastapic .* aby regula dzialala dla dowolnego ciagu znakow? Spróbowalem jeszcze jednej opcji:
URLe zapisuje w postaci %D0%9E-%D1%84%D0%B8%D1%80%D0%BC%D0%B5 Wszystko by bylo ok ale jak wywoluje dany url to wyswiwtla sie komunikat:
Zamienia link na jakies krzaczory ;/ Jak wpisze url bez htaccessa /index.php?module=%D0%9E-%D1%84%D0%B8%D1%80%D0%BC%D0%B5 dziala ok takze to cos musi byc w htaccessie nie wiem czy jakies kodowanie trzeba ustaic dla lpiku htaccess czy dodac jakies flagi? Ta cyrylica mnie wykonczy... ;/ Ten post edytował metal 16.07.2010, 17:47:43 -------------------- zmodyfikowano - waga
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Sprawdzilem tez tego htaccessa na ovhost i stronka sie odpala ale nie laduja sie zadne pliki graficzne, style, js'y. Problem tkwi już w konstrukcji strony, vide: http://eriz.pcinside.pl/weblog/mod_rewrite...wiazac-208.html Cytat Jak wpisze url bez htaccessa /index.php?module=%D0%9E-%D1%84%D0%B8%D1%80%D0%BC%D0%B5 dziala ok takze to cos musi byc w htaccessie nie wiem czy jakies kodowanie trzeba ustaic dla lpiku htaccess czy dodac jakies flagi? Ta cyrylica mnie wykonczy... ;/ IMHO trochę przekombinowałeś z regułkami, home.pl ma coś z tym Rewritem zjechane (zresztą, nie tylko Rewrite, ale nie to jest tematem dyskusji), spróbuj najpierw tego:
A flagę NC omiń, Rewrite lubi się żreć z wyrażeniami regularnymi operującymi na znakach narodowych, więc lepiej to powierzyć skryptowi. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 31 Pomógł: 0 Dołączył: 1.02.2007 Skąd: Sanok Ostrzeżenie: (0%) ![]() ![]() |
Pogooglowalem troche i znalazlem przyklad ktory dostosowalem do swoich potrzeb i zadzialalo
![]() RewriteRule ^([^.]+)[\/]{0,1}$ index.php?module=$1 [L,QSA,NC] Tylko troche nie rozumie tego zapisu ![]() Jestem slaby z wyrazen regularnych nie wiem po co przed . znak ^ (bez tego nie dziala) Moze mi ktos wytlumaczyc ten zapis? -------------------- zmodyfikowano - waga
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Hmm, daszek na początku neguje całą klasę znaków, czyli uwzględnij wszystkie inne oprócz podanych. Kropka oznacza dowolny znak, czyli - na zdrowy chłopski rozum - uwzględnij tylko zbiór pusty.
Przyznam szczerze, że mnie ta konstrukcja trochę dziwi, bo logicznie... nie ma sensu? (przynajmniej dla mnie) -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
w zbiorze znaków [] to czy dany znak trzeba poprzedzić slashem zależy od kolejności wpisywania tam i znaczenia - już to miałem pisać ale w pierw wolałem znaleźć jakieś źródło na potwierdzenie tego (drugi wynik na "wyrażenia regularne")
http://www.egrafik.pl/kurs-regex-wyrazenia-regularne/ Cytat Notka: Większość znaków specjalnych zawartych w zbiorze znaków jest automatycznie kapsułkowane do ich znaczenia dosłownego. Np. /[.]/ pasuje do . a nie do wszystkich znaków oprócz końca linii. jednak ja dla pewności prawie zawsze poprzedzam znaki specjalne slashem choć nie zawsze - i co język zdarzają się drobne niuanse w wyrażeniach regularnych nie chce mi się sprawdzać ale dla mnie regułka: RewriteRule ^([^.]+)[\/]{0,1}$ index.php?module=$1 [L,QSA,NC] znaczy tyle - całość do pierwszej kropki lub jak jej nie będzie to do końca... i dalej dla mnie bez sensu jest zapis [\/]{0,1} gdyż ze względu na zachłanność zostanie wchłonięte przez pierwszy człon a zgodnie z definicją nie musi wystąpić ( wyrażenie [\/]{0,1} jest równoznaczne [\/]? ) -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 12:47 |