Autor Zpráva
Hogen
Profil *
Ahoj,

už 2 dny se snažím přijít na to, proč Apachi (mám verzi 2.2.11) vadí v URL znaky * : " < >. Ani nestačí dojít k .htaccess a už vyhodí chybu 403. Zajímavé je, že např. /foo: vrátí chybu 403, ale /foo/bar: vrátí (správně) 404, zápis localhost/* vrací také 403. Nevíte někdo prosím v čem je problém?

Díky!
Davex
Profil
Tyto znaky nejsou v URL povoleny, stačí se podívat do error logu.
Hogen
Profil *
Tuším, že hvězdička je nerezervovaný znak a vyhazuje to s ní chybu 403 taky. Hlavně nechápu jak je možný, že /foo: a /foo/bar: způsobí odlišné chyby, když tam je obsažen stejný znak. Díky za každej nápad :)
Davex
Profil
Hvězdička je zjevně rezervovaná jako žolík, takže v logu je chyba:
(20025)The given path contained wildcard characters: access to /test/foo*bar/ failed


U /foo: a /foo/bar: se to chová rozdílně, protože druhý případ se dříve vyhodnotí jako neexistence adresáře ./foo.
(20024)The given path is misformatted or contained invalid characters: Cannot map GET /test/foo: HTTP/1.1 to file
File does not exist: C:/xampp/htdocs/test/foo
Hogen
Profil *
Bude to jak píšeš, ale je zvláštní, že na webhostinzích tyhle "invalid paths" vrátí 404 místo 403. Každopádně moc díky za vysvětlení!
Davex
Profil
Tyto znaky filtruje Apache jen na Windows, protože tam mají speciální význam. Pokud běží server na Linuxu, tak to bude normálně fungovat.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0