![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Chcę, aby mod_rewrite przepisywał linki do pliku admin/index.php, jeżeli użytkownik wpisze: domena.com/admin Niestety nie udaje mi się uzyskać zadowalającego efektu. Plik .htaccess:
Kod RewriteEngine On Co należy dopisać, aby serwer rozpoznawał, że trzeba przekierować do panelu admina? Po wpisaniu domena.com/admintest powinna wyświetlić się już właściwa strona (nie panel admina).RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([A-Za-z0-9_/]+)$ index.php?a=$1 [L,QSA] Może lepiej wszystkie żądania przekierować do 1 pliku index.php i dopiero tam rozpoznać, czy trzeba przejść do PA, czy do witryny? URL dzielę na fragmenty w ten sposób: Kod $URL = isset($_GET['a']) ? explode('/',$_GET['a']) : array('main'); Rozważmy adres: domain.com/admin/categoriesW przypadku przekierowania mod_rewrite ID modułu ("categories") znajduje się w $URL[0]. Natomiast gdy wszystkie żądania odbiera index.php, nazwa modułu PA jest przechowywana w $URL[1]. Nie będę mógł potem zmienić sposobu przekierowania bez edycji wszystkich plików lub stosowania trików. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 375 Pomógł: 20 Dołączył: 28.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Postanowiłem, że wszystkie żądania będzie odbierał plik index.php. Teraz stoję przed kolejnym problemem.
Na początku przypomnę, że w głównym katalogu (localhost) znajduje się .htaccess w regułką: Kod RewriteEngine On Po prostu nie chcę edytować pliku host w systemie. Ona raczej nie ma znaczenia, choć może mylę się?RewriteRule (.+) /strona/$1 [L,QSA] Katalog strona zawiera kolejny .htaccess: Kod php_value session.use_only_cookies 1 W katalogu strona znajduje się folder admin. Niestety, jeżeli w URL-u odwołam się do folderu admin, Apache przekierowuje przeglądarkę do: localhost/strona/admin/?a=adminphp_value session.use_trans_sid 0 php_value register_globals 0 php_value magic_quotes_gpc 0 RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f #RewriteCond %{REQUEST_FILENAME} !-d - regułka zbędna RewriteRule (.*) index.php?a=$1 [L,QSA] Nie rozumiem, dlaczego. Co robię źle? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 08:07 |