Skocz do zawartości

mod rewrite automatycznie


Rekomendowane odpowiedzi

Witam

Wiem że było bardzo dużo postów na ten temat, ale nie umiemsobie poradzić

mam stronę

https://www.bleble.pl/tanie-bilety/index.php?id=austria

https://www.bleble.pl/tanie-bilety/index.php?id=austria_cos

a chcę zrobić tak:

https://www.bleble.pl/tanie-bilety/austria.html

https://www.bleble.pl/tanie-bilety/austria-cos.html

Tylko chciałbym żeby zrobiło się to automatycznie, nie żebym musiał wstukiwać każde państwo

RewriteRule ^tanie-bilety/([A-Z]*).html /tanie-bilety/index.php?id=$

mam problem z końcówką

Prosże o pomoc

Odnośnik do komentarza
Udostępnij na innych stronach

jeśli chcesz docelowo mieć myślniki w adresie np. austria-cos to w nazwach zmiennej id używaj myślników a nie podkreślników

RewriteRule ^tanie-bilety/([a-zA-Z0-9]+).html tanie-bilety/index.php?id=$1 [L]

poza tym lepiej użyć dwóch zmiennych id=austria i dodatkowy_parametr=cos

RewriteRule ^tanie-bilety/([a-zA-Z0-9]+).html tanie-bilety/index.php?id=$1 [L]
RewriteRule ^tanie-bilety/([a-zA-Z0-9]+)-([a-zA-Z0-9]+).html tanie-bilety/index.php?id=$1&dodatkowy_parametr=$2 [L]

dzięki temu nie będziesz musiał explodować tego austria-cos aby wyciągnąć pierwszą i drugą zmienną

może zadziała, powodzenia

P.S. normanos, paskudko byłeś szybszy :)

- buduj content metodą drag&drop i łatwo zgarnij SEO backlinki z msDrop

- wideoporadniki jak korzystać z msDrop

Odnośnik do komentarza
Udostępnij na innych stronach

Działa Twoje pierwsze i od użytkownika nad Tobą:)

nie robiłem trgo drugiego bo w sumie nie potrzebowałem chodziło mi tylko

o to że mając zmienną id=bilety_czarterowe myślałem że "a-z" nie złapie "_"

ale zakręciłem!

Mam jescze pytanie czy można jakos jescze bardziej zautomatyzować rewrite

i zrbić jeden RewriteRule do wszystkich podkatalogów

RewriteRule ^tanie-bilety/([a-zA-Z0-9]+).html tanie-bilety/index.php?id=$1 [L]

żeby nie wpisywać nazwy katalogu tanie-bilety

Odnośnik do komentarza
Udostępnij na innych stronach

zapis ([a-zA-Z0-9]+) oznacza że przyjmie Ci wyłącznie znaki

od: a do z

od: A do Z

od: 0 do 9

+ w tym przypadku oznacza ze występuje dowolna ilość znaków ale conajmniej jeden

myślałem że "a-z" nie złapie "_"

jeśli powyższy ten zapis nie wyświetla Ci strony błędu "Error 404", czy "Object not found!" a w linku jest podkreślnik lub myślnik to coś jest nie tak

aha, zdgodnie z wyrażeniami regularnymi przed kropką .html powinno być jeszcze \.html

Mam jescze pytanie czy można jakos jescze bardziej zautomatyzować

można, i powinieneś dojść do tego sam, zapoznaj się z przykładami (a jest ich trochę) dostępnymi na tym forum

- buduj content metodą drag&drop i łatwo zgarnij SEO backlinki z msDrop

- wideoporadniki jak korzystać z msDrop

Odnośnik do komentarza
Udostępnij na innych stronach

jak to nie działa? :D

Poniższy zapis ma wpuszczać zakresy znaków a do z, A do Z, 0 do 9 oraz podkreślnik

RewriteRule ^tanie-bilety/([a-zA-Z0-9_]+).html tanie-bilety/index.php?id=$1 [L]

ten znowu oprócz powyższych ma wpuszczać dodatkowo myślnik

RewriteRule ^tanie-bilety/([a-zA-Z0-9_-]+).html tanie-bilety/index.php?id=$1 [L]

co do automatyzacji, załóżmy że masz założone katalogi tanie-bilety oraz drogie-bilety a w nich pliki index.php wówczas robisz taką regułę

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+).html $1/index.php?id=$2 [L]

aby stworzyć efekt wirtualnych katalogów (czyli nie musieć ich mieć na serwerze) możesz sterować serwisem z poziomu jednego głównego pliku index.php i zastosować wówczas taką regułę

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+).html index.php?dzial=$1&id=$2 [L]

zmienna dzial symuluje tutaj nazwę dowolnego katalogu

- buduj content metodą drag&drop i łatwo zgarnij SEO backlinki z msDrop

- wideoporadniki jak korzystać z msDrop

Odnośnik do komentarza
Udostępnij na innych stronach

Dziękuję że mi to tak fajnie wytłumaczyłeś teraz działa wszystko automatycznmie

ale mam problem mam pop-undera ktory otwiera stronę www.bleble.pl/reklama.html

i przy takimej konfiguracji .htaccess

RewriteEngine on

RewriteCond %{HTTP_HOST} ^bleble.pl$
RewriteRule ^(.*)$ https://www.bleble.pl/ [R=301,L]

RewriteRule ^kursy-walut.html /show.php?id=kursy_walut [L]
RewriteRule ^([a-zA-Z0-9_-]+)\.html /show.php?id=$1 [L]
RewriteRule ^promocje/id([0-9]*).html /promocje/wys.php?id=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)\.html $1/index.php?id=$2 [L]

nie wyświetla mi się ta reklama jakbym miałwięcej takich plików jak reklama to byłby duuzy problem:(

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności