Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [.htaccess]"ukrycie" w URL'u zmiennej przy pomocy .htaccess
RaRu
post 29.04.2008, 13:16:45
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 17.02.2003
Skąd: Turośń Kościelna (Białystok)

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


Witam,

mam pytanie związane z odpowiednią preparacją URL'a na własne potrzeby.

zwykłe adresy nie wykorzystujące .htaccess wyglądają następująco:

Kod
1. www.domena.pl/?pg=strona&gr=grupa1
2. www.domena.pl/?pg=strona&gr=grupa2
3. www.domena.pl/?pg=strona&gr=grupa3
4. www.domena.pl/?pg=strona&gr=grupa1&pr=produkt1
4. www.domena.pl/?pg=strona&gr=grupa3&pr=produkt3
6. ....


adresy wykorzystujące standardowe formuły .htaccess przyjmują formę:

Kod
1. www.domena.pl/strona/grupa1/
2. www.domena.pl/strona/grupa2/
3. www.domena.pl/strona/grupa3/
4. www.domena.pl/strona/grupa1/produkt1
5. www.domena.pl/strona/grupa3/produkt3
6. ....



Generalnie dążę do sytuacji, w której moje URL'e przyjęłyby taką postać:

Kod
1. www.domena.pl/grupa1/
2. www.domena.pl/grupa2/
3. www.domena.pl/grupa3/
4. www.domena.pl/grupa1/produkt1
5. www.domena.pl/grupa3/produkt3
6. ....


czyli chciałbym ukryć pierwszy parametr "strona".

Pytanie czy jest to możliwe przy pomocy odpowiednich reguł w .htaccess. Czy istnieje inne rozwiązanie...? a może jedyna opcja to stworzenie podstron: grupa1, grupa2, grupa3... co z oczywistych względów nie wchodzi w rachubę.

dziękuję za wszelkie podpowiedzi, pozdrawiam...


--------------------
http://www.raru.pl
=========================
Myślę, więc jestem ...

RaRu
Go to the top of the page
+Quote Post
Cezar708
post 29.04.2008, 14:20:01
Post #2





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


Rozumiem, że chodzi Ci o modRewrite (który jest ustawiany w htaccess)

proponuję abyś wrzucił tutaj dotychczasową zawartość Twojego pliku .htaccess, dzięki temu będzie można określić co jest nie tak.

Pozdrawiam
Go to the top of the page
+Quote Post
bim2
post 29.04.2008, 15:39:11
Post #3





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


RewriteRule (.+)/(.+). www.domena.pl/?pg=strona&gr=$13&pr=$2 [L]

jakoś tak, ale nie wiem czy działa smile.gif


--------------------
Go to the top of the page
+Quote Post
RaRu
post 29.04.2008, 18:25:02
Post #4





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 17.02.2003
Skąd: Turośń Kościelna (Białystok)

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


Może przedstawię temat też inaczej, żebyśmy się dobrze zrozumieli. Chodzi mi o uzyskanie efektu takiego jak na www.nokaut.pl. Tam po wejściu ze strony głównej w jakąkolwiek kategorię mamy URL'e postaci:

1. http://www.nokaut.pl/muzyka/
2. http://www.nokaut.pl/moda-i-styl/
3. http://www.nokaut.pl/komputery/
4. ................
. ................
n .................

i tysiące innych linków, gdzie nazwa kategorii jest widoczna od razu po adresie strony.

Tak się zastanawiam jak taki efekt osiągnąć. Gdyby było stworzonych tysiące podstron, powiedzmy o nazwach: muzyka.php, moda-i-styl.php, komputery.php, ...... to taki efekt URL'a byłoby osiągnąć bardzo łatwo. Link bez użycia .htaccess miałby postać np: ?pg=muzyka, ?pg=moda-i-styl, .... a po użyciu .htaccess i reguły modRewrite: RewriteRule ^([a-z-]+)/$ index.php?pg=$1 [L,NC,NS] przyjął by postać www.domena.pl/muzyka/, www.domena.pl/moda-i-styl

Jednak wydaje mi się, że na nokaucie wszystko jest wczytywane do jednej strony, a jeśli tak to nazwa kategorii (muzyka, moda-i-styl....) to drugi parametr, ponieważ pierwszym będzie podstrona, na której są wczytywane kategorie. Taki adres bez użycia .htaccess mógłby wyglądać tak: ?pg=podstrona&kat=muzyka a z użyciem .htaccess i reguły modRewrite: RewriteRule ^([a-z-]+)/([a-z-]+)/$ index.php?pg=$1&kat=$2 [L,NC,NS] następująco: www.domena.pl/podstrona/muzyka/ Taki efekt mogę bez problemu osiągnąć, tylko chciałbym aby po adresie od razu było: muzyka a zmiennej "podstrona" chciałbym się pozbyć. Pytanie czy da się zrobić za pomocą reguł modRewrite, czy może nokaut.pl zastosowało inne rozwiązanie...? Jak uważacie..? jak można taki efekt osiągnąć? Dziękuję i pozdrawiam.


--------------------
http://www.raru.pl
=========================
Myślę, więc jestem ...

RaRu
Go to the top of the page
+Quote Post
DeyV
post 30.04.2008, 09:56:57
Post #5





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Jestem przekonany, że problem 2 zmiennej w tym przypadku rozwiązany jest po prostu w ten sposób, że tej 2 zmiennej nie ma smile.gif
A dlaczego?
Bo jest ona zupełnie nie potrzebna, wystarczy napisać sobie prosty mechanizm aliasów, który w oparciu o konkretne słowo kluczowe uruchomi dowolny moduł / akcję twojego systemu.

W końcu zdecydowanie łatwiej jest napisać taką tablicę w php niż kombinować z plikiem htaccess, który na dodatek musiałbyś jeszcze cały czas uaktualniać, w momencie dodawania kolejnych elementów swojej strony.


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.08.2025 - 22:32