Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> mod_rewrite prawie działa. Jaki błąd?
gummmibear
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 12.03.2009
Skąd: Poznań

Ostrzeżenie: (10%)
X----


Hej.


Mam problem z mod_rewrite.

Plik .httaccess wygląda tak:

  1. RewriteEngine On
  2. #Options FallowSymLinks
  3.  
  4. RewriteRule ^glowna index.php
  5. RewriteRule ^show.html show.php



po wejściu np. localhost/glowna

Ładnie ładuje mi index.php

W index.php mam np link w postaci.

  1. <a href="index.php" class="menu_link">Strona główna</a>


niestety po otwarciu linka lub zaznaczeni myszką zamiast "glowna" mam "index.php"

Gdzie mam błąd?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
jarrod
post
Post #2





Grupa: Zarejestrowani
Postów: 312
Pomógł: 9
Dołączył: 14.10.2006
Skąd: warszawa

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


Cytat(gummmibear @ 9.08.2009, 21:05:23 ) *
Gdzie mam błąd?

W podejściu do mod_rewrite.
Moduł ten nie służy do zamiany linków w wygenerowanym dokumencie. Jeśli w kodzie masz wpisany index.php to za pomocą mod_rewrite tego nie zmienisz.
mod_rewrite służy do interpretacji adresów. Czyli tak jak w twoim przykładzie jeśli adres to /glowna to mod_rewrite przekierowuje żądanie do pliku index.php
Natomiast jeśli wchodzisz pod adres /show.html to oznacza, że tak naprawdę chodzi ci o show.php.

Możesz za pomocą tego modułu (oprócz powyższego) przekierować na inny adres czyli jeśli ktoś wejdzie poprzez index.php to od razu przekierowuje na /glowna (odpowiedniej reguły poszukaj na forum bo już były opisywane).
Natomiast nie wpłynie to na źródło dokumentu - link do /index.php nadal będzie wskazywał na /index.php (wyszukiwarki też zobaczą /index.php).
Zatem aby zrobić sobie przyjazne URL-e to niestety musisz pozmieniać linki w źródłach.
Go to the top of the page
+Quote Post
gummmibear
post
Post #3





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 12.03.2009
Skąd: Poznań

Ostrzeżenie: (10%)
X----


(IMG:style_emoticons/default/wstydnis.gif)

jarrod dziękuję za wyjaśnienia.
Gdzieś przeczytałem że mod_rewrite zmienia linki w pliku źródłowym i dlatego ta gafa (IMG:style_emoticons/default/blinksmiley.gif)






Ten post edytował gummmibear 9.08.2009, 22:30:07
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 25.12.2025 - 06:10