Autor Zpráva
miloskroulik
Profil *
Stránky hostuji na Českém hostingu. Zatím jsem si ale netroufl na nastavení mod_rewrite, které se tu provádí nestandardně. Odesílá se mailem na adresu podpory. V nápovědě je následující informace:

> Pravidla pro mod_rewrite jsou nastavována v hlavním konfiguračním souboru webserveru Apache, proto se efekt pravidel může lišit od chování pravidel napsaných přímo pro aplikaci v souboru .htaccess. Toto je vlastnost modulu mod_rewrite. <

Jelikož jsem nikdy se soubory .htaccess či mod_rewrite vůbec nepracoval, nemám žádnou představu, v čem rozdíly spočívají. Mohl by mi prosím někdo netechnicky poradit, jak využít soubor .htaccess dodaný s nějakým projektem ( např. sNews) ke zprovoznění mod_rewrite? Ocením zejména radu někoho, kdo hostuje přímo u Českého hostingu. Pravděpodobně se však jedná o obecnější problém.

Předem děkuji,

Miloš Kroulík
Retal
Profil
Příklad .htaccess pro Wordpress.

Localhost:
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]


ČH
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
miloskroulik
Profil *
Děkuji, možná ještě jeden dotaz. Je nějak možné si toto chování Českého hostingu nějak "nasimulovat" na localhostu? Stačí prostě postupovat podle tohoto návodu zde na Jakpátweb ? Nebo je třeba nějaké speciálnější nastavení?
miloskroulik
Profil *
Jako první pokus jsem se pokusil přepsat soubor .htaccess pro aplikaci Zenphoto. Mohl by mi prosím někdo poradit, zda jsem ho přepsal správně?


RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} -f [NC,OR]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} -d [NC]
RewriteRule ^.*$ - [R,L]

RewriteRule ^admin/?$ zen/admin.php [R,L]

RewriteRule ^page/([0-9]+)/?$ index.php?page=$1 [L,QSA]
RewriteRule ^page/([A-Za-z0-9-_]+)/?$ index.php?p=$1 [L,QSA]
RewriteRule ^([^/]+)/?$ index.php?album=$1 [L,QSA]
RewriteRule ^([^/]+)/page/([0-9]+)/?$ index.php?album=$1&page=$2 [L,QSA]
RewriteRule ^([^/]+)/image/(thumb|[0-9]{1,4})/([^/\]+)$ zen/i.php?a=$1&i=$3&s=$2 [L,QSA]
RewriteRule ^([^/]+)/image/([^/\]+)$ albums/$1/$2 [L]
RewriteRule ^([^/]+)/([^/\]+)$ index.php?album=$1&image=$2 [L,QSA]


Pro srovnání uvádím původní podobu:


<IfModule mod_rewrite.c>
RewriteEngine On

# !!! Change this to the web path (eg: http://www.example.com/photos --> /photos) !!!
RewriteBase /zenphoto

RewriteCond %{REQUEST_FILENAME} -f [NC,OR]
RewriteCond %{REQUEST_FILENAME} -d [NC]
RewriteRule ^.*$ - [R,L]

RewriteRule ^admin/?$ zen/admin.php [R,L]

RewriteRule ^page/([0-9]+)/?$ index.php?page=$1 [L,QSA]
RewriteRule ^page/([A-Za-z0-9-_]+)/?$ index.php?p=$1 [L,QSA]
RewriteRule ^([^/]+)/?$ index.php?album=$1 [L,QSA]
RewriteRule ^([^/]+)/page/([0-9]+)/?$ index.php?album=$1&page=$2 [L,QSA]
RewriteRule ^([^/]+)/image/(thumb|[0-9]{1,4})/([^/\]+)$ zen/i.php?a=$1&i=$3&s=$2 [L,QSA]
RewriteRule ^([^/]+)/image/([^/\]+)$ albums/$1/$2 [L]
RewriteRule ^([^/]+)/([^/\]+)$ index.php?album=$1&image=$2 [L,QSA]

</IfModule>

Děkuji,

M.K.
Berny
Profil
Neměl by prosím někdo link na nějaký kvalitní seriál o .htaccess mod_rewrite? Děkuji
Toto téma je uzamčeno. Odpověď nelze zaslat.