![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 328 Pomógł: 3 Dołączył: 10.07.2016 Skąd: UK-raine Ostrzeżenie: (0%) ![]() ![]() |
Witajcie,
Pomóżcie proszę, jak w htaccess przekierować, mam bardzo długi url, (plik znajduje się głęboko) odwołanie do pliku/strony znajduje się w ../../../../plik.php a chciałbym mieć domena.yhy/plik niby właczyłem RewriteRule ale nie widzę, żeby to dizałało. Jak zwykle pewnie coś skopałem. próbowałem też tak (plik w głównym katalogu strony):
ale cokolwiek wklepię (oczywiście plik istnieje) nie widzę, żeby cokolwiek się działo. Wpisuję i z rozszerzeniem i bez ... nic Podpowiedzcie proszę Pozdrawiam amator Ten post edytował phpamator 4.11.2019, 16:36:35 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Masz świadomość co robią te warunki?
Kod Rewritecond %{REQUEST_URI} !-f
Rewritecond %{REQUEST_URI} !-d Rewritecond %{REQUEST_URI} !-l -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 328 Pomógł: 3 Dołączył: 10.07.2016 Skąd: UK-raine Ostrzeżenie: (0%) ![]() ![]() |
.... nie
przepisałem coś co znalazłem gdzieś w sieci. htaccess to dla mnie jakaś magia i jeszcze nie czaję tego. Chciałem użyskać coś takiego: wpisuję url: domena.pl/katalog/ a przekierowanie czy .. coś otwiera plik znajdujący się np w domena.pl/katalog/katalog/katalog/../../plik.php oczywiście wciąż pokazując ten pierwszy. Wymyśliłem, że zamiast kombinować i robić jakieś szopki, mogę poprostu w domena.pl/katalok umieścić poprostu index.php w którym includuję plik z innej lokalizacji i z głowy. To było by chyba najprostsze rozwiązanie ... Chyba nie można tak, że wybieramy url: http://strona.pl/katalog/ i ten przekierowuje najpierw do url_pliku po czym ponownie url_pliku do http://strona.pl/katalog/ .. czyli dwa przekierowania (to się zapętli i wywali błąd)? Ten post edytował phpamator 6.11.2019, 17:05:53 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Te wszystkie warunki (Rewritecond) oznaczają coś w rodzaju if, czyli w tym przypadku:
Kod jeśli to nie plik oraz jeśli to nie katalog oraz jeśli to nie symlink ... zastosuj reguły przepisywania Tym samym do tych reguł nie dochodzi, jeśli część Twojego URLa odnosi się do katalogu który już istnieje. Wracając do Twojego problemu. To moim zdaniem podchodzisz do tego nieprawidłowo, skoro chcesz przepisywać ścieżkę na nią samą, albo szukać gdzieś pliku po serwerze. Moim zdaniem jest tu kilka: 1. Przegląd tych linków i ich zamiana na inne, jeśli są gdzieś zapisane, historycznie używane, to wtedy dodanie przekierowań (ale docelowe katalogi powinny być inne). 2. Jeśli te pliki działają samodzielnie (../../../../plik.php może być wywołany bezpośrednio w przeglądarce), to zamiast przekierowań dodałbym index.php, w którym by en plik docelowy był includowany. Oczywiście trzeba mieć wtedy na uwadze poprawność ścieżek (również w tym pliku - jeśli coś zapisuje na dysk). 3. Napisanie aplikacji tak, żeby wszystko szło przez index.php w głównym katalogu z włączonym mod_rewrite i obrabianie routingu w aplikacji. -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 26.04.2025 - 03:52 |