Autor Zpráva
Manny
Profil *
Server mi nebere tento zápis:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)?/?$ ?pg=$1&s=$2 [L,QSA]


Nevidíte někdo chybu, prosím?
ShiraNai7
Profil
Manny:
Server mi nebere

A to znamená co? Nechová se jak má? Hlási internal server error?
Zkus:

RewriteRule ^([^/]+)/([^/]+)?/?$ /?pg=$1&s=$2 [L,QSA]
Manny
Profil *
ShiraNai7:
A to znamená co? Nechová se jak má? Hlási internal server error?
Nenalezeno Not found
ShiraNai7
Profil
Manny:
I po přidání lomítka?
Manny
Profil *
ShiraNai7:
Ani po přidání lomítka.

Jednou podmínkou to ale jde
RewriteRule ^([^/.]+)/?$ ?pg=$1 [L,QSA]
Davex
Profil
Pravidlo je v pořádku. Nejsou tam nějaká další pravidla, se kterými by to mohlo kolidovat?
Manny
Profil *
Davex:
Nejsou. To mě taky napadlo.
Davex
Profil
Jak vypadá URL, které zkoušíš? Jsou tam alespoň čtyři nebo pět lomítek?

http://www.example.com/prvni/druhy
http://www.example.com/prvni/druhy/
Manny
Profil *
Davex:
mam relativni odkazy
href="stranka"

href="stranka/podstranka"

Takže v prvním případě pouze 3 lomítka
Davex
Profil
Regulárnímu výrazu v pravidle vyhoví pouze druhý případ. Pro první variantu by se muselo přidat další pravidlo.

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)$ ?pg=$1 [L,QSA]
Manny
Profil *
Aha. Takže, když používám v url 1 i 2 proměnné, musím mít taky 2 samostatné podmínky. To jsem nevěděl. Myslel jsem, že to odbudu tím společným pravidlem.
Celý soubor .htaccess bude vypadat tedy takhle:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/.]+)/?$ ?pg=$1 [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)?/?$ /?pg=$1&s=$2 [L,QSA]
Manny
Profil *
Ještě něco. Pravidlo více méně funguje, ale u podstránek mi přestal fungovat stylopis a odkazy z menu, které je v indexu jsou z těchto podstránek ve tvaru
http://www.neco.cz/podstranka/stranka
Davex
Profil
To je normální chování. Používej kořenové adresy.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0