Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][APACHE] mod_rewrite /modul/akcja/param
Forum PHP.pl > Forum > Przedszkole
-Jaro-
Przekierowuje koniec adresu do zmiennej $_GET['q'] jednak mam problem z ustawianiem linków w HTMLu.

Poniższe adresy działają OK:
  1. <a href="news">Newsy</a>
  2. <a href="rejestracja">Rejestracja</a>

Adres wygląda tak: http//localhost/www/rejestracja , a mod_rewrite przepisuje do http://localhost/www/index.php?q=rejestracja


Jednak gdy dam na końcu adresu ukośnik albo dodam akcję:
  1. <a href="news/">Newsy</a>
  2. <a href="rejestracja/send">Rejestracja</a>


to kiedy kliknę kilka razy ten sam link to przechodzę do strony np.
Cytat

Czyli adresy są tworzone na podstawie aktualnego adresu a nie "bazy", czyli "www/"


mój .httacces w www/
Cytat
Options FollowSymLinks
RewriteEngine On

RewriteBase /www
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [QSA,L]




Mogę podawać wszędzie bezwzględne ścieżki, czyli:
  1. <a href="http//localhost/www/news">Newsy</a>
  2. <a href="http//localhost/www/rejestracja">Rejestracja</a>

ale myślę, że jest to bez sensu.





lessi
daj w nagłówku strony
<base href="http://localhost/www/">
-Jaro-
@lessi
Dzięki, działa. Zapomniałeś tylko o dwukropku przy "http" i robił adres w stylu http://localhost/www/http//localhost/www/news/ tongue.gif

Swoją drogą nie wiedziałem że istnieje taki znacznik <base>.
lessi
Już kolejny raz zapominam o dwukropku przy http. Miałem kiedyś ten sam problem i gdzieś go znalazłem.
erix
Cytat
ale myślę, że jest to bez sensu.

Dlaczego bez sensu?
-Jaro-
@erix
Zapomniałem, że mogę adres dać do zmiennej. Wtedy gdy zmienię domenę to muszę edytować jedną zmienną zamiast kilkunastu linków.

To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.