![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zrobiłem stronę, która korzysta z mod_rewrite. Aby uniknąć problemów z lokalizowaniem obrazków (nigdy do końca nie wiadomo czy jest się aktualnie w bieżącym, czy w wyższym katalogu, wiadomo, mod_rewrite) większość relatywnych ścieżek do obrazków wpisałem tak: ../../../../../../../gfx/obrazek.gif Logicznie rzecz biorąc serwer dojdzie do roota serwera wirtualnego, bo wyżej już nie może, i wpadnie do katalogu gfx. Co więcej, faktycznie to robi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Jest jednak małe 'ale': potrafi zastanawiać się MINUTAMI nad lokalizacją obrazków, albo po prostu się zatyka i przez następnych 5 minut mam od niego zero odpowiedzi. Oczywiście przetestowałem możliwość bezwzględnych ścieżek do plików, ale nie chcę tego stosować ... bo nie. Co robić? Jakiś mod_rewrite który usystematyzuje te wszystkie ../../? Czy coś jeszcze inszego? Pozdrawiam |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
Cytat Oczywiście przetestowałem możliwość bezwzględnych ścieżek do plików, ale nie chcę tego stosować ... bo nie. głupi powód i skoro i tak przechodzisz do katalogu głównego to nie prościej zamiast ../../../../../../../gfx/obrazek.gif dać zwyczajnie /gfx/obrazek.gif ? efekt ten sam Ten post edytował devnul 29.10.2008, 00:13:23 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Powód jaki jest, każdy widzi. Bo babcia sobie zażyczyła.
Wracając do tematu: jeśli użyję /gfx/coś.jpg to serwer odniesie się do tego z 'bieżącego katalogu'. -Załóżmy, że wpisuję adres w przeglądarce: http://domena.pl/mahomet/turban/ -Załóżmy, że w głównym katalogu mam .htaccess, który przekierowuje z przepisaniem zmiennych, jakoś tak: public_html/index.php?dzial=mahomet&przykrywka=turban -załóżmy, że w pliku index.php jest zapytanie o /gfx/coś.jpg, wtedy serwer zwraca mi błąd: Not Found in public_html/mahomet/turban/gfx/coś.jpg. W dodatku nie jest ściśle określona ilość 'nibykatalogów' podawanych w adresie URL ->dlatego właśnie stosuję ../(../) [w okresie]. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
To masz błędną konfigurację serwera czy to w .htaccess czy w samym pliku konfiguracyjnym apache (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) stosowanie bezwzględnych ścieżek to nie rocked science i nie ma z tym problemów... chyba że się namiesza (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Jeżeli masz przepisywane urle typu strona.pl/x/y/z/ itp. To dla /gfx/* musisz zabronić mapowania w mod_rewrite (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
dla /gfx/* musisz zabronić mapowania w mod_rewrite (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ok. Próbowałem coś o tym wygooglać, ale dużo nie pojąłem. Dlatego zadam znienawidzone pytanie: JAK? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
na przykład tak:
Kod RewriteCond %{REQUEST_FILENAME} !-f zakładam że wiesz co oznacza powyższy zapis - jeśli nie to z całą pewnością przy odrobinie wysiłku się dowiesz Ten post edytował devnul 30.10.2008, 23:49:37 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ach. Myślałem że będzie to coś wyrafinowanego, albo chociaż jakiś sprytny chwyt. Well, dzięki za chęci, już sobie poradzę.
Ten post edytował krnombrny 31.10.2008, 15:22:25 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 16:08 |