Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [inne][.htaccess] przekierowanie zapytania na podkatalog
czychacz
post 24.03.2012, 08:38:32
Post #1





Grupa: Zarejestrowani
Postów: 189
Pomógł: 13
Dołączył: 20.09.2008
Skąd: Lublin

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


wybaczcie mi, ale jestem zielony w htaccess :/
na serwerze mam następującą strukturę katalogów:
Kod
/
+-public
  +-katalog_z_plikami
  | +-lol.jpg
  | +-rofl.png
  +-plik.html


chciałbym domyślnie dla katalogu głównego ustawić przekierowanie żądania na public.
próbowałem:
Kod
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !/public/
RewriteRule ^(.*)$ /public/$1 [L]
#ten tutaj o ten kod nie pozwala na otwarcie plików - dodałem go świadomie
<Files ~ ".*">
    Order allow,deny
    Allow from all
</Files>

ale nibanana :/ po prostu nie wchodzi. dostaję 404.
szczerze mówiąc, to nie wiem, czy w ogóle powinienem dawać jednocześnie blokadę dostępu do plików i rewriterules. bo chyba jedno wykluczy drugie. chyba.
w public jest htaccess z:
Kod
<Files ~ ".*">
    Order allow,deny
    Allow from all
</Files>
SetEnv APPLICATION_ENV development
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

tak, zend wink.gif
zaiste, problem chyba jest w tym pierwszym pliku, ale gdzie dokładniej to nie wiem. szukałem na innych stronach, ale zwykle trafiam na wyniki w stylu "ustaw przekierowanie z subdomeny lol.rofl.com na rofl.com/lol"
próbowałem też R=301, ale toże nie wyszło.

any ideas?

nikt nie ma pomysłów na rozwiązanie?
Go to the top of the page
+Quote Post
Necsord
post 24.03.2012, 12:33:02
Post #2





Grupa: Zarejestrowani
Postów: 189
Pomógł: 60
Dołączył: 5.10.2010
Skąd: Bydgoszcz

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


Cytat
Kod
/
+-public
  +-katalog_z_plikami
  | +-lol.jpg
  | +-rofl.png
  +-plik.html


Jeżeli masz dokładnie taką strukturę plików to błąd leży w ostatniej linijce htaccess'a Zend'a, ponieważ wszystkie zapytania (oprócz tych od plików i katalogów) przekierowujesz na index.php w katalogu public, którego jak widać powyżej nie posiadasz. Jeżeli jest inaczej i posidasz ten plik to pokaz przykładowe linki dla których według ciebie to nie działa.
Go to the top of the page
+Quote Post
czychacz
post 24.03.2012, 14:52:44
Post #3





Grupa: Zarejestrowani
Postów: 189
Pomógł: 13
Dołączył: 20.09.2008
Skąd: Lublin

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


Kod
/
+-application
+-library
+-public
| +-javascript
| +-stylesheet
| +-.htaccess
+-.htaccess

tak dokładnie prezentuje się struktura katalogów w tym projekcie.
z .htaccess z katalogu głównego chcę zrobić przekierowanie na katalog public w taki sposób, żeby na pasku adresu nie było widać, że to jest przekierowanie. wydaje mi się, że to jest możliwe, ale nie mam pewności...
Go to the top of the page
+Quote Post
Necsord
post 24.03.2012, 14:57:17
Post #4





Grupa: Zarejestrowani
Postów: 189
Pomógł: 60
Dołączył: 5.10.2010
Skąd: Bydgoszcz

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


No i tak masz, a w katalogu public masz przekierowanie na index.php.
Go to the top of the page
+Quote Post
czychacz
post 1.07.2012, 07:08:58
Post #5





Grupa: Zarejestrowani
Postów: 189
Pomógł: 13
Dołączył: 20.09.2008
Skąd: Lublin

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


temat powraca (wcześniej miałem mało czasu na badanie go).
Kod
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !public/
RewriteRule ^(.*)$ public/$1 [NC,L]

ten kod faktycznie przekierowuje żądanie na podkatalog (wywaliłem "/" na początku nazwy katalogu), ale przekierowuje razem z nazwą katalogu nadrzędnego (jak mam w adresie "localhost/folder/" to przekierowuje do public z nazwą kontrolera 'folder' - czyli dostaję błąd tongue.gif)
da się to jakoś poprawić?
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: 19.07.2025 - 11:35