Mod_ReWrite

Imam vprašanje glede mod rewrite ...

prej nisem delal z mod rewrite, sedaj pa sem naredil page, pa dodal mod rewrite, zadeva dela ... poskusno :)

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.* - [L]
RewriteRule ^([a-z0-9]+)/? view.php?a=$1 [L]

ker stvari še nimam na domeni ampak na http://IP/WEBS/domain.com/ ... zato so vse poti nekako tako:

src="PIC/avto1.jpg", tudi v linkih ...

problem nastane oz. je že ... ko imam mod rewrite pa grem recimo na tak link

http://IP/WEBS/domain.com/view.php/test_image.jpg

sicer spremenljivko test_image.jpg dobim v php vendar je stran brez CSS ker je tudi tam pot podana NEKAJ/css.css in ne http://IP/WEBS/domain.com/NEKAJ/css.css ...

no sedaj pa me zanima če se da to kako drugače rešiti ali morem iti pa sprenit vse poti, slike, css, linki ... ? Vse to namreč kaže narobe, namesto od http://IP/WEBS/domain.com/ kaže od http://IP/WEBS/domain.com/view.php/ naprej ..... :S :(

69 odgovorov

Dolgo se že mučim s tem modrewrite, sedaj pa sem naleten na težavo, ki je ne znam rešit. URL-je mi je uspelo prepisat (npr. clanek.php?id=xx&title=yyyy -> /clanek/xx/yyyy/), sedaj pa ne vem kako naj prenesem $id. Prej sem to naredil z $GET['id'], kako pa naj zdaj rešim, da mi bo preneslo id in bom tako lahko prebral podatke iz baze za določen članek? Upam, da razumete kje je težava :) Torej iz seznama člankov lahko izbereš posamezen članek, ki se nato odpre v novi strani, ne vem pa kako sedaj na to novo stran prenest id članka, da bom lahko prebral podatke (članka) iz baze :)

preko $_SERVER['requestUri'] dobi ven parametre od domene naprej, explode z /.

Kaj pa je zate nova stran? Gre za stran na dugi domeni, ali samo neka podstran clanek.php ?

V obeh primerih mora $_GET delovati, če je pravilo pravilno spisano in bi ti moralo vrniti id. Ne vem če si poizkusil, ampak bi ti že obstoječa koda morala delovati. :D

carli:
Kaj pa je zate nova stran? Gre za stran na dugi domeni, ali samo neka podstran clanek.php ?

V obeh primerih mora $_GET delovati, če je pravilo pravilno spisano in bi ti moralo vrniti id. Ne vem če si poizkusil, ampak bi ti že obstoječa koda morala delovati. :D

Je podstran na domeni... Torej fajl v osnovnem direktoriju domene... $_GET deluje če uporabim dinamičen URL, ampak kot sem napisal želim uporabiti statičnega.
Sem naredil kot je napisal Roky in sedaj deluje :) Hvala obema za pomoč!

Zdravo!!
Rabil bi pomoc kako z mod_rewrite preusmerit URL-je v obliki neki.com/phpbb/... v URL neki.com/forum/...
Prosil bi ce bi mi lahko kdo pomagal odpraviti tezavo.

RedirectMatch 301 /phpbb/(.*) http://domena.si/forum/$1

kako bi preusmeril url
http://izris-pohistva.com/kuhinje/ureditev-stanovanja-z-idejo.php?id=383
v
http://izris-pohistva.com/kuhinje/ureditev-stanovanja-z-idejo

na prvem linku je dostopna le vsebina(ko stvar klicem v lightbox efektu)
na drugem pa je stran dostopna iz googla itd

rad bi da do prvega linka sploh ni mozen dostop in da avtomatsko preusmeri na drugi link, ker je zadeva identicna
googlu sem zadevo prepovedal z robots.txt disalow .php?id
Sedaj bi rad zadevo dokoncno resil.

V sitemapu imam 300+ pages, v indexu pa le 90 in to ze traja in traja. Imam uniq vsebino, na tag straneh izvlecke,
je slucajno povezano z zgornjim uprasanjem
original linku dodam rel in id posta, s katerim potem iz baze potegnem le post, ta link imam v disalow an z robots.txt
googlu pa serviram original link kot stran.

Post je isti, le da v lightboxu ne morem prikazati kar celotne strani...

mprose7,
preveri kaj pravi google webmaster tools.

Drugače bi ti za reševanje popup vsebin in seo prijaznosti predlagal tak način, kot si ga zastavil, le mogoče na še bolj ločenem urlju. Tako ločevanje le s html spremevljivkami se mi zdi malo nenavadno in res lahko pride do težav.

Drugače imaš pa tudi opcijo, da imaš na enem in istem urlju vedno celotno vsebino z glavo in doctype-om ter potem preko ajax-a prebereš vsebinski del in ga naložiš v popup.