Autor Zpráva
Org
Profil *
Dobrý den,
s nastavováním souboru htc aces jsem v začátcích a nevim si rady :(
chtěl bych jakoukoliv url adresu podstrčit souborem index.php
Tuším že by tam určitě měli byt tyto dva řádky, jenže logicky mi při tom dochází k zacyklení, protože samotný index.php se sám sebou donekonečna podstrkuje.
RewriteEngine on
RewriteRule (.*) index.php

Proto si myslím že by to mělo vypadat takto nějak
RewriteEngine on
RewriteCond URL != index.php  //Jak mám tento řádek správě syntakticky zapsat?
RewriteRule (.*) index.php

Moc děkuji za radu

Moderátor Davex: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Davex
Profil
Obvykle se to řeší podmínkou, která zabrání zacyklení
RewriteCond %{ENV:REDIRECT_STATUS} =""

nebo podmínkou, která kontroluje existenci souboru, aby se přepisovaly pouze neexistující adresy
RewriteCond %{REQUEST_FILENAME} !-f

nebo pouze úpravou regulárního výrazu v pravidle, pokud se v přepisované adrese nikdy nebude vyskytovat tečka
RewriteRule ^([^.]*)$ index.php [L]
Kajman_
Profil *
Další varianta

RewriteEngine on
RewriteRule ^index\.php$ - [L] #pri index.php neprepise a ukonci prochazeni, podobne se da vyuzit flag S
RewriteRule (.*) index.php
Org
Profil *
Děkuju za dobré rady,
použil jsem tu Kajmanovu variantu, vyřešila přesně to co jsem potřeboval.
Davex
Profil
Org:
Tu Kajmanovu metodu jsem schválně vynechal, protože pak bys mohl mít na webu problémy s nefunkčními externími styly, skripty a nezobrazováním obrázků.
Org
Profil *
Aha, tak to radši použiju příkaz od tebe: RewriteCond %{REQUEST_FILENAME} !-f

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0