Autor Zpráva
PCMark
Profil
Mám web http://pcmark.info pomocí mod_rewrite se mi už podařilo přeměrovat adresu s "www" na adresu bez "www", potřeboval bych poradit co mám napsat do .htaccess, aby se mi přepsalo ještě adresa http://pcmark.info/index.php a http://pcmark.info/ na [url=http://pcmark.info
]http://pcmark.info
[/url]
momentálně mám v htaccessu tenko kod:
RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.pcmark.info
RewriteRule (.*) http://pcmark.info/$1 [R=301,QSA,L]


Druhý problém se týká meho druheho webu http://qip.pcmark.info , kde mám nějaké češtiny pro qip ke stažení v exe formátu. Potřeboval bych aby když někdo nalinkuje exe soubour co je uložen na mem webu na jinem webu, aby ho to při kliku na takovýto soubor z ciziho webu přeměrovalo na: http://qip.pcmark.info/viewtopic.php?t=3

Zkoušel jsem to napsat takto:
RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(qip.)?pcmark.info/.*$ [NC]
RewriteRule .(exe))$ http://qip.pcmark.info/viewtopic.php?t=3 [R,L]

uložil jsem to do souboru .htaccess a dal do složkdy s exe soubory, ale asi je to blbost, protože mi to nefunguje a mod_rewrite skoro vůbec nerozumím.
Díky, myslím že druhá část dotazu je celkem zajímavá ;)
tony
Profil *
interval.cz najdi modrewrite
PCMark
Profil
tony:
já už jsem četl všechny články o mod_rewrite na českém webu, ale prostě jsem to nepochopil :(
Yuhů
Profil
tohle se nedá řešit pře mod_rewrite, i když to všichni suverénně tvrdí.
Ono se to totiž zacyklí.

Jediný způsob, jak to udělat, je založit falešnou startovní stránku, třeba zacatek.html a v .htaccess nastavit startovní soubor na tenhle zacatek.html, třeba takto (index tam nechávám pro jistotu):

# nastaveni vychozi stranky adresare
DirectoryIndex zacatek.html index.html index.php

a potom už udělat jenom to, že index přesměruješ na /. Server si na / dosadí zacatek.html, takže k žádnému cyklení nedojde

RewriteRule ^index\.html / [R=301]

Jo a na ten zacatek.html nesmíš nikde odkazovat, dobré je také zakázat ho (nebo ještě lépe jeho část) v robots.txt:

User-Agent: *
Disallow: /zaca
PCMark
Profil
v rootu jsem si vytvořil prázdný soubor zacatek.html a do .htaccess jsem napsal:

# nastaveni vychozi stranky adresare

DirectoryIndex zacatek.html index.html index.php
RewriteEngine on
RewriteRule ^index\.html / [R=301]


zkoušel jsem to na testovací subdomeně a vysledek: 500 Internal Server Error
bestof
Profil
Díky Yuhů, konečně jsem zjistil, proč se mi to cyklí. Jenomže to nevyřešilo můj problém zcela - bohužel:-( protože mám několik adresářů www.stranka.cz/adresar1/ nebo www.stranka.cz/adresar2/ atd. a zatim jsem nastavoval mod_rewrite jen z toho kořenového, ale teď s tim

DirectoryIndex zacatek.html index.html index.php

musim asi v každém adresáři vytvořit samostatný .htaccess že?
JanoF
Profil
to co potrebujes vyzera takto

RewriteRule ^$ http://domena.tld/index.php [R=301,QSA,L]
Toto téma je uzamčeno. Odpověď nelze zaslat.

0