| Autor | Zpráva | ||
|---|---|---|---|
| Cody Profil |
#1 · Zasláno: 20. 7. 2012, 10:47:36 · Upravil/a: Moderátor (editace znemožněna) 20. 7. 2012, 14:22:43
Mám problém s nastavní přesměrování v .htaccess. Předně jsem v tomto naprostý začátečník a většinou jsem to řešil tak, že jsme to dokoukal a pok použil. Bohužel tentokrát jsme nepřišel na to jak přesměrovat neexistující stránky na nové.
Potřebuji toto: Přesměrovat tyro stránky přes 301 na nové www.domena.cz/?page=DH/index.php na hlavní stránku www.domena.cz/
www.domena.cz/?page=DH/detail.php na www.domena.cz/tkanove-soli
Zároveň mám na webu nainstalované CMS CMS Made Simple a to má v .htaccess nějaké zápisy pro hezké URL, který tam musí zůstat. Měl jsem v .htaccess tento zápis (přesměrování nefungovalo) RewriteEngine on
RewriteBase /
RewriteRule \?page=DH/index\.php index.php [R=301]
RewriteRule \?page=DH/detail\.php tkanove-soli [R=301]
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_METHOD} !POST$
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1 [QSA]Poté co jsem nenašel odpověď na stránce nápovědy Wedosu mi "odborník" ze zákaznické podpory upravil .htaccess takto (po této úpravě přesměrování taky nefungovalo a navíc přestaly fungovat přesměrované hezké URL v rámci CMS): #Options +FollowSymLinks
RewriteEngine on
RewriteBase /
###Pridano WEDOS
#Jen obycejne presmerovani
RewriteRule pokus\.php /tkanove-soli/ [R=301,L]
#To co jste pozadoval
#RewriteCond %{QUERY_STRING} ^([^=]+)=([^&]+)
#RewriteRule ^$ /kamsmerovat/%1/%2
RewriteCond %{QUERY_STRING} DH/detail.php
RewriteRule ^$ /tkanove-soli/ [L]
RewriteCond %{QUERY_STRING} DH/index.php
RewriteRule ^$ http://www.duhovahvezda.cz/? [R=301,L]
# Priklad na slovo WEDOS
RewriteCond %{QUERY_STRING} DH/wedos.php
RewriteRule ^$ http://www.wedos.cz/? [R=301,L]
### Konec testu WEDOS
## Nasledujici jsou zakomentovane WEDOS. Odstrante #
#RewriteCond %{REQUEST_URI} !/$
#RewriteCond %{REQUEST_URI} !\.
#RewriteCond %{REQUEST_METHOD} !POST$
#RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
## Rewrites urls in the form of /parent/child/
## but only rewrites if the requested URL is not a file or directory
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.+)$ index.php?page=$1 [QSA]
## Konec zakomentovanych radku WEDOS. Odstrante #Proto jsme odstranil jeho komentáře, aby alespoň web fungoval. Ale stále nevím jak udělat to přesměrování. .htaccess aktuálně vypadá takto. #Options +FollowSymLinks
RewriteEngine on
RewriteBase /
###Pridano WEDOS
#Jen obycejne presmerovani
RewriteRule pokus\.php /tkanove-soli/ [R=301,L]
#To co jste pozadoval
#RewriteCond %{QUERY_STRING} ^([^=]+)=([^&]+)
#RewriteRule ^$ /kamsmerovat/%1/%2
RewriteCond %{QUERY_STRING} DH/detail.php
RewriteRule ^$ /tkanove-soli/ [L]
RewriteCond %{QUERY_STRING} DH/index.php
RewriteRule ^$ http://www.duhovahvezda.cz/? [R=301,L]
# Priklad na slovo WEDOS
RewriteCond %{QUERY_STRING} DH/wedos.php
RewriteRule ^$ http://www.wedos.cz/? [R=301,L]
### Konec testu WEDOS
## Nasledujici jsou zakomentovane WEDOS. Odstrante #
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteCond %{REQUEST_METHOD} !POST$
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
## Rewrites urls in the form of /parent/child/
## but only rewrites if the requested URL is not a file or directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1 [QSA]
## Konec zakomentovanych radku WEDOS. Odstrante #Dokážete mi prosím poradit, jak nastavit správně přesměrování? |
||
| Kajman Profil |
#2 · Zasláno: 20. 7. 2012, 12:40:08
Zkuste na začátek pravidel toto
RewriteBase /
RewriteCond %{QUERY_STRING} page=DH/detail\.php
RewriteCond %{ENV:REDIRECT_STATUS} =""
RewriteRule ^(index\.php)?$ tkanove-soli/? [L,R]
RewriteCond %{QUERY_STRING} page=DH/index\.php
RewriteCond %{ENV:REDIRECT_STATUS} =""
RewriteRule ^(index\.php)?$ /? [L,R] |
||
| Cody Profil |
#3 · Zasláno: 20. 7. 2012, 13:01:37
Díky už funguje přesměrování z www.duhovahvezda.cz/?page=DH/index.php na wwwduhovahvezda.cz, ale stále www.duhovahvezda.cz/DH/detail.php na http://www.duhovahvezda.cz/tkanove-soli/ nefunguje - klasická 404.
|
||
| Kajman Profil |
To bude tím, že jste v první příspěvku žádal o přesměrování z
ww>w.domena.cz/?page=DH/detail.php Pro novou zmíněnou adresu bez otazníku to bude jednoduché... RewriteRule ^DH/detail\.php$ tkanove-soli/ [L,R] |
||
| Cody Profil |
Kajman:
Pravda, moje chyba! Nyní už to funguje skvěle, díky! |
||
|
Časová prodleva: 13 let
|
|||
0