Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mod_rewrite]Ograniczenia dostępu do podkatalogów
Forum PHP.pl > Forum > Serwery WWW > Apache
Jarod
W aplikacji mam m.in. takie podkatalogi i pliki:

Controllers
Models
Views
Logs
Core
(...)
index.php
main.php
(...)

Wszystkie wywołania odbywają się poprzez http://serwer/main (tu odpalany jest frontcontroller), który wybiera odpowiednią akcję i ta akcja odpala odpowiednie widoki. Jeśli użytkownik nie jest zalogowany to przekierowany jest na stronę logowania.

Ale przecież ktoś może wpisać http://serwer/main/Views/uzytkownicy.php

Nie zobaczy danych bo nie został odpalony przez controller odpowiedni model, który pobrałby te dane. Ale zobaczy błędy (teoretycznie bo wyświetlanie błędów na serwerze jest wyłączone, czyli zobaczy białą stronę - ale to rozwiązanie nei odpowiada mi). Jednym z rozwiązań może być dodanie do każdego widoku zapisu, że jeżeli nie jest zalogowany to komunikat "musisz się zalogować" - ale za dużo plików do zmiany i mało estetyczne winksmiley.jpg


Zastanawiam się jak mogę zrobić aby użytkownik mógł wywoływać z paska url tylko pliki
http://serwer/main.php
http://serwer/index.php

Na pewno poprzez .htaccess, ale nie wiem jak to zapisać. Byłoby by dobrze jakby to był jeden plik htaccess w głównym katalogu bez potrzeby kopioania go do wszystkich podkatalogów. Pomoże ktoś?



EDIT:
------

Wyszukałem że można coś takiego
Cytat


ale ciągnie za sobą wszystkie opcjonalne parametry a to mi nie pasuje.
Pozostaje mi chyba tylko w każdym podkatalogu dodać htaccess z deny from all
MMPrime
Kod
RewriteRule ^Controllers|Models / [R=301]

Przekieruje(301) wszystko z folderu Controllers lub Models na /.
Jarod
Cytat(MMPrime @ 23.04.2008, 04:42:07 ) *
Przekieruje(301) wszystko z folderu Controllers lub Models na /.

Czyli zostanie odpalony pliczek index.php ?

Dzięki za pomoc. Na razie zostanę przy deny from all.

pozdrwiam
MMPrime
Nie, zostanie wykonane przekierowanie jawne na /. Zresztą sam zobacz.
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.