Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: htaccess existence souboru neplatne url

Aktivity
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:16.10.2018 9:07

Mam v htaccess tyto pravidla

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ osob_stranky.php?path=$1 [L,QSA]

  RewriteCond %{REQUEST_FILENAME} -f
#RewriteCond %{REQUEST_FILENAME} -d
  RewriteRule ^(.*)$ osob_stranky.php?path=$1/download [L,QSA]
 </IfModule>

A ono mi to tvrdi, ze soubor existuje, kdyz mu zadam adresu

data/test/layout/layout.htm/download

a samozrejme mi to opravi na

data/test/layout/layout.htm/download/download

Jak je to mozne? Proc se takto chova? Ta url neexistuje.
Ja to pak musim v php opravovat.
A az se dostanu k uploadu, tak mi to bude taky prepisovat?

Jako, muzu tam pridat specialni podminku, ktera detekuje download na konci.

Zkusil jsem: .

Chci docílit: .

 
Odpovědět
16.10.2018 9:07
Avatar
David Moškoř:16.10.2018 16:01

Jaký je přesně tvůj problém? Nechápu čeho chceš docílit.

Nahoru Odpovědět
16.10.2018 16:01
Život je příliš krátký na to, abyste vymýšleli smysluplné názvy proměnných...
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:16.10.2018 16:12

No, upravena verze by vypadala takhle.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ osob_stranky.php?path=$1 [L,QSA]

RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} !/upload$
RewriteCond %{REQUEST_URI} !/download$
RewriteRule ^(.*)$ osob_stranky.php?path=$1/download [L,QSA]

RewriteRule ^(.*)$ osob_stranky.php?path=$1 [L,QSA]

Problem je v tom, ze kdyz zadam adresu
data/test/lay­out/layout.htm/dow­nload

  • ta adresa neexistuje
  • ten htaccess to vyhodnoti, jakoze soubor existuje, tento radek RewriteCond %{REQUEST_FILENAME} !-f

coz je spatne, kdyz takovou url dam do prohlizece bez htaccess, tak vypise error 404

Cili mi neni jasne, jak to, ze ten radek tvrdi, ze soubor existuje. To zavani tim, ze at napisu do adresy cokoliv
data/test/lay­out/layout.htm/dow­nload
data/test/lay­out/layout.htm/co­koliv
tak stejne uzivateli posila soubor data/test/lay­out/layout.htm, ktery exstuje.
To prave nechci. Chci, aby uzivatel sel pres php a to na zaklade opravneni rozhodlo, zda ma k tomu souboru uzivatel pristup nebo ne.

Editováno 16.10.2018 16:13
 
Nahoru Odpovědět
16.10.2018 16:12
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.