RedirectMatch v .htaccess
18 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Zdravim. Tak jsem se dnes pokousel udelat par parvidel a jedno mi za boha ziveho nejde dat dohromady. V regulernich vyrazech se zrovna moc dobre nevyznam, a tak bych potreboval od nekoho sikovneho, kdo ma chvilicku casu pomoct. Na webu http://webovy.vyrobce.cz/ jsem donedavna pouzival misto hezkych URL identifikatory. Vsiml jsem si ale, ze ma hlavni stranka PR 4 a tak jsem si rikal ze je skoda tuhle zapomenku nechat uschnout kdyz se muze jeste vyuzit. Ted se tedy jiz zobrazuji URL hezke, ale je mozne, ze ve fulltextovych portalech jsou nekde zaregistrovane stranky s id, tedy napr. http://webovy.vyrobce.cz/?id=privydelek A ted mi jde o to, ze by to nevadilo ani kvuli neexistujici strance, protoze system pracuje stejne, a tak se misto http://webovy.vyrobce.cz/privydelek.phtml zkratka zobrazi tahle oskliva adresa, nicmene je to duplicitni obsah na jine url. Takze bych potreboval automaticky redirect pri zadani napr. http://webovy.vyrobce.cz/?id=privydelek na http://webovy.vyrobce.cz/privydelek.phtml zatim mam v .htaccess toto RewriteCond %{HTTP_HOST} ^www\.webovy\.vyrobce\.cz$ [NC] RewriteRule ^(.*)$ http://webovy.vyrobce.cz/$1 [R=301,L] RewriteRule ^(.*)\.phtml$ /index.php?id=$1 [L,QSA]
-
chybi ti tam RewriteEngine On ale ja s tim zatim dost zapasim (mam totiz stejny problem). pokud by se ti to podarilo rozchodit, posli sem, pls, obsah htaccess.
-
Funguje mi tato varianta. Přesměrovává všechny soubory s příponou .html z adresáře st/ , tj. např. strelka.unas.cz/st/hello.html => strelka.unas.cz/st/page.php?p=hello současně s tím zůstává v adresním řádku původní název s .html RewriteEngine On RewriteRule st/(.+)\.html /st/page.php?p=$1 [L]
-
RewriteEngine On tam samozrejme mam, to by mi jinak nefungovaly ty ostatni veci.
-
RewriteRule ^(.*)\.phtml$ /index.php?id=$1 [L,QSA] způsobí přepsání http://webovy.vyrobce.cz/privydelek.phtml na http://webovy.vyrobce.cz/?id=privydelek. Ty to ale chceš obráceně, takže pravidlo je imho třeba obrátit + přesměrovat.
-
RewriteRule ^(.*)\.phtml$ /index.php?id=$1 [L,QSA] zpusobi, ze se adresa http://webovy.vyrobce.cz/privydelek.phtml chova jako http://webovy.vyrobce.cz/?id=privydelek. Coz je v poradku, tak to potrebuju. Ja jen chci, aby ten, kdo napise http://webovy.vyrobce.cz/?id=privydelek byl presmerovan na http://webovy.vyrobce.cz/privydelek.phtml, ale pravidlo ze se bude http://webovy.vyrobce.cz/privydelek.phtml chovat jako http://webovy.vyrobce.cz/?id=privydelek zustalo stejne..
-
RewriteEngine On RewriteRule ^index.php?id=(.+)$ $1\.phtml$ [R] RewriteRule ^(.+)\.phtml$ /index.php?id=$1 [L] melo by to byt spravne a v adrese vzdy ukazovat variantu .phtml a nikdy index.php, ale netestoval jsem to...
-
Jj, presne takhle nejak by to melo byt. Tohle sice nefunguje, ale je to imho hodne blizko. Take jsem to zkousel, akorad jsem (asi chybne) mel prohozene radky a v hranatych zavorkach jsem mel urcite jine parametry. Ty parametry do dneska nejak nechapu. Zatim vsude, kde jsem je menil nemely funkci na vliv, ale to je ted nepodstatne :]
-
Já si to představovala trošičku jinak RewriteEngine On RewriteRule ^(.+)\.phtml$ /index.php?id=$1 [L] RewriteRule ^index.php\?id=(.+)$ http://webovy.vyrobce.cz/$1\.phtml$ [L]
-
Tomáš Hejda to měl imho docela blízko, já bych zkusil RewriteEngine On RewriteRule ^index.php?id=(.+) $1.phtml$ [R=301,QSA] RewriteRule ^(.+)\.phtml index.php?id=$1 [L,QSA]
-
Bohuzel, reseni Thalie nepomohlo a reseni Non_Ea nezabralo take. Navic se nepredavala id, takze stranky hlasily 404 ;-p
-
(v te druhe variante)
-
CHci tak zacit s rewrite.. neco uz jsem o tom precetl... jen jsem nepochopil kde mam byt ten .htaccess .. a taky co ta tecka nazacatku... kdyz si ho zkusim vytvorit na locallhostu tak mne to nepusti.. dekuji
-
Tečka na začátku tam musí být, protože to je v podstatě jen přípona - .htaccess. V případě mod_rewrite ho dej do kořene webu. Na windowsech ho uděláš např. v TotalCommanderu.
-
Thalia: Ono to neni pripona. Je to obycejny soubor. Tecka je vlastnost linuxu a rika, ze ten soubor je skryty. Windows s tim neumi pracovat, a tak to mylne bere jako priponu.
-
Diky za predchozi rady.... a ted jeste dal...... RewriteEngine on RewriteCond %{HTTP_HOST} ^localhost/stranky RewriteRule ^nahled(.*)\.html$ http://localhost/stranky/index.php?zkouska=41 napsal jsem tohle ale nechodi to .. nejaka rada? .htaccess mam v adresari stranky
-
<HTML>Nejlepsi rada: dojdi na to sam ja jsem zase napsal: )úůsfd)úů-§¨vc-- a taky to nechodi</HTML>
-
kdybych to nezkousel tak to sem ani nepisu...