Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mod_rewrite]Ograniczenia dostępu do podkatalogów
Jarod
post 18.04.2008, 17:00:10
Post #1





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

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


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

Ten post edytował Jarod 18.04.2008, 17:39:06


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
MMPrime
post 23.04.2008, 05:42:07
Post #2





Grupa: Zarejestrowani
Postów: 79
Pomógł: 12
Dołączył: 23.04.2008

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


Kod
RewriteRule ^Controllers|Models / [R=301]

Przekieruje(301) wszystko z folderu Controllers lub Models na /.


--------------------
Go to the top of the page
+Quote Post
Jarod
post 23.04.2008, 06:36:56
Post #3





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

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


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


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
MMPrime
post 23.04.2008, 10:07:32
Post #4





Grupa: Zarejestrowani
Postów: 79
Pomógł: 12
Dołączył: 23.04.2008

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


Nie, zostanie wykonane przekierowanie jawne na /. Zresztą sam zobacz.


--------------------
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: 14.08.2025 - 02:46