![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mod rewrite pytań kilka…
Witam, ostatnio zastanawiam się nad jedną kwestią budowy składni mod_rewrite’a. Zazwyczaj jeżeli wpiszemy adres http://page.pl/style.css adres odwoła się do katalogu /public_html/style.css . Napisze wstęp do mojego problemu. Zakładamy, że ktoś zażyczył sobie takiego przepisywania, kiedy plik istanieje, wówczas jest przepisywany, a jeżeli nie, to deklarujemy jakiś inny plik (dla przykładu index.php). Zasada jest taka: http://page.pl/style.css to: /public_html/style.css http://page.pl/nieistniejący_style.css to: /public_html/index.php Kod .htaccess wyglądałby mniej więcej tak: Kod RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} -f RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.+)$ $1 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+)$ index.php Możnaby jeszcze zamiast wykrycia niewłaściwego pliku wywołać index.php jako ErrorDocument 404, ale trzymajmy się powyższego schematu. Ok., powyższy przykład szuka pliku w katalogu /public_html/. Załóżmy, że mam taką strukturę: w katalogu głównym /public_html/ jest plik index.php oraz folder /www/. Wszystkie adresy przyjmowałyby następujący schemat: http://page.pl/style.css to: /public_html/www/style.css http://page.pl/nieistniejący_style.css to: /public_html/index.php Moje pytanie brzmi: jak zmodyfikować RewriteCond %{REQUEST_FILENAME} –f tak, aby sprawdzał, czy plik istnieje w folderze /www/ a nie w folderze głównym? P.S: robiłem, że rewritebase jest na /www/, a index był: ../index.php ale nie działało... ciągle wyskakiwał index. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 82 Pomógł: 0 Dołączył: 30.04.2006 Skąd: Kalisz Ostrzeżenie: (0%) ![]() ![]() |
A nie łatwiej po prostu użyć WildCard?
|
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
php Pro?? PRzenosze
|
|
|
![]()
Post
#4
|
|
Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Developerzy Postów: 823 Pomógł: 12 Dołączył: 18.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
no niestety nie dziala (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 359 Pomógł: 1 Dołączył: 16.04.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
zawsze mozesz zrobic przekierowanie wszystkiego na get.php i tam parsowac i decydowac co podawac do przegladarki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 00:31 |