Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> RewriteRule .* - obsługa od strony PHP, RewriteRule ^.*$ index.php [NC,L] | Jak ma wyglądać kod w php?
Michauuu
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 13.06.2010

Ostrzeżenie: (0%)
-----


Cześć.
Jak obsłużyć linki w php po dodaniu RewriteRule ^.*$ index.php [NC,L] do .htaccess?
Jak się tego używa?! Czy istnieje funkcja robiąca explode z $_SERVER["REQUEST_URI"]?

Z góry ogromne podziękowania dla osoby która wyjaśni mi jak tego użyć
Go to the top of the page
+Quote Post
Radeqq
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 2
Dołączył: 10.05.2008

Ostrzeżenie: (0%)
-----


Ja używam czegoś takiego:
Strona to np: test.pl/artykul/nazwa.html
  1. $url=strip_tags(substr($_SERVER['REQUEST_URI'], 1));//obcinam 1 - bo z przodu jest /
  2. if (strlen($url)>5 && substr($url, -5)=='.html') $url=substr($url,0,-5);//usuwa końcówkę .html jeśli istnieje
  3. $k=explode('/', $url);//dzieli adres na array po '/'
  4. if (empty($k[0])) $k[0]='index';//jesli strona glowna
  5.  
  6. print_r($k);
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(Michauuu @ 20.06.2013, 20:47:22 ) *
Cześć.
Jak obsłużyć linki w php po dodaniu RewriteRule ^.*$ index.php [NC,L] do .htaccess?
Jak się tego używa?! Czy istnieje funkcja robiąca explode z $_SERVER["REQUEST_URI"]?

Z góry ogromne podziękowania dla osoby która wyjaśni mi jak tego użyć


Przecież przepisujesz wszystkie adresy na index.php, co tu chcesz obsługiwać? Nie masz tu żadnych zmiennych ni nic.
Go to the top of the page
+Quote Post
Michauuu
post
Post #4





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 13.06.2010

Ostrzeżenie: (0%)
-----


No zastanów się: chcę, żeby index.php obsługiwał całe myślenie strony. Muszę więc jakoś pobrać adres przed rewriterule, a później sprawdzać coraz dalsze człony tego adresu.
Dzięki @Radeqq. Funkcja jest oczywiście dobra i ok. Zastanawia mnie jednak jak radzą sobie z takim rewrite wszystkie większe cmsy i czemu w żadnym nie potrafię znaleźć odpowiedniej funkcji. Tym bardziej, że większość z nich blokuje też katalog systemowy:
RewriteRule ^(_includes|_tmp).*$ index/error/deny/ [NC,L]

Ten post edytował Michauuu 21.06.2013, 10:58:20
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #5





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


No to tak nie byłoby prościej?

Kod
RewriteRule ^(.*)$ index.php?wtf=$1 [NC,L]
Go to the top of the page
+Quote Post
Radeqq
post
Post #6





Grupa: Zarejestrowani
Postów: 15
Pomógł: 2
Dołączył: 10.05.2008

Ostrzeżenie: (0%)
-----


Co do większych CMSów to zobacz np. Kohana 3.3.0: system/classes/Kohana/Request.php metoda detect_uri
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.09.2025 - 12:22