Autor Zpráva
Suta
Profil
Dobrý den,
vím, jak přesměrovat z podadresáře na jiný script, vím, jak zakázat přístup do určitého adresář, nevím však, jak při aplikaci těchto dvou pravidel určit současně pravidlo pro adresáře, v nichž jsou dokumenty v pdf, k nimž chci ponechat přístup.

Nejlepší asi bude nastínit o co konkrétně se pokouším. Pokud mám ve svém htaccess něco špatně, prosím o radu:

#presmerovani vseho bez www na verzi s www - SERVER
RewriteCond %{HTTP_HOST} ^mojedomena.cz
RewriteRule (.*) http://www.mojedomena.cz/$1 [R=301,QSA,L]

#dalsi pravidlo ponecha url tak jak je (cislo za lomitkem = cislo mistnosti), ale presmeruje na korenovy script do rootu
#nyni tam mam natvrdo cislo mistnosti, nevim, jak v htaccess vytvorit regularni vyraz, ktery by poznal cislo..?
RewriteRule  ^1(.*)$ /index.html [L,QSA]
RewriteRule  ^2(.*)$ /index.html [L,QSA]
RewriteRule  ^3(.*)$ /index.html [L,QSA]

#presmerovani v pripade pokusu o zobrazeni neexistujici stranky
ErrorDocument 403 /index.html
ErrorDocument 404 /index.html

#zde bych potreboval, aby adresa mojedomena.cz/documents nepresmerovala do rootu (viz pravidlo vyse)
#jsou v ni totiz soubory s priponou .pdf, ktere davam na webu k dispozici ke stazeni a diky kodu vyse nejsou nalezeny
#nevim, zda-li je proto potreba vytvorit nejako pravidlo, nebo zda-li musim dat specielni htaccess do toho adresare..

#posledni, s cim si nevim rady, je zakazani pristupu do urcitych adresaru
#chtel bych, aby prohlizec uzivateli nezobrazil obsah adresare mojedomena.cz/php, pokud vsak do tohoto adresare
#pridam htaccess ktere zakazuje pristup, pak mi tyto soubory nenacte ani script na webu a web nefunguje..

Díky moc za případnou pomoc.
Kajman
Profil
Suta:
mojedomena.cz/documents nepresmerovala do rootu (viz pravidlo vyse)

V uvedených pravidlech není nic, co by přesměrovávalo složku documents do rootu.

zakazani pristupu do urcitych adresaru

V rewrite viz. Mod_rewrite - příklady
Davex
Profil
Suta:
jak v htaccess vytvorit regularni vyraz, ktery by poznal cislo..?
RewriteRule  ^[0-9](.*)$ /index.html [L,QSA]

ErrorDocument 403 /index.html ErrorDocument 404 /index.html
To není přesměrování, ale nastavení chybových stránek pro chyby 403 (přístup odmítnut) a 404 (soubor neexistuje).

mojedomena.cz/documents nepresmerovala do rootu (viz pravidlo vyse)
Možná je zakázán výpis obsahu adresáře a není v něm index, takže je vyvolána chyba 403. Výpis adresáře se dá zapnout volbou Options +Indexes.
Suta
Profil
Kajman:
V uvedených pravidlech není nic, co by přesměrovávalo složku documents do rootu.
Ano, skoro dva dny mi trvalo, než jsem přišel na to, že složka documents nebyla přehrána na serveru, a já zatím celou tu dobu hledal chybu v htaccess.

Davex:
Díky za regulární výraz.

Stále si však nevím rady se zákazem přístupu. Pokud použiji níže uvedený kód, při vepsání adresáře do adresního řádku je forbidden, web mi však rovněž dané soubory nenačte, což je špatně.
RewriteRule ^(.*/)?php/.* - [F]

Pokud použiji tento další kód, pak opět nepomůže (resp. soubory jsou dostupné v obou případech) :(
deny from all
allow from ip_adresa_serveru

Prosím o pomoc.
Kajman
Profil
Suta:
web mi však rovněž dané soubory nenačte

A jak je načítáte? Snad ne přes http.

tento další kód
Pro deny a allow nezapomeňte správně nastavit order.
Suta
Profil
Kajman:
A jak je načítáte? Snad ne přes http.
Mám stránku v html (index.html), ta Ajaxem komunikuje se serverem (soubory .php v adresáři php). V tom je nějaký problém? Použití index.php namísto index.html problém vyřeší?
Kajman
Profil
Suta:
V tom je nějaký problém?

Ano, pokud do adresáře php zakážete přístup, tak prohlížeči selžou požadavky do toho adresáře, protože je zakázaný.
Suta
Profil
Kajman:
Pak jsem v koncích. Dva dny hledám řešení, jak docílit toho, aby se po zadání určitého adresáře do url prohlížeče nevypsal jeho obsah (např. seznam souborů v onom adresáři php), ale aby tyto soubory na webu normálně fungovaly! Existuje tedy prosím funkční řešení, nebo ne? Již jsem vyzkoušel vše možné :(
Kajman
Profil
Suta:
seznam souborů v onom adresáři php

Ten se zakáže díky

Options -Indexes
Suta
Profil
Kajman:
To je přesně ono, ta pomlčka! Díky moc.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: