Jump to content
php.lv forumi

mod_rewrite


born

Recommended Posts

Tātad par mod_rewrite. Tiksim nu vienreiz galaa, taa izmeljoshi.

 

Izskreju cauri foruma diskusijām, bet tā lidzgalam un konkrēti nekas nav izrunāts. Uz arzemju linkiem paklikoju, bet man vislabāk mācās, ja latvieshu valodā teksts.

 

pieņemsim ka ir saites apmeram shadas:

http://domeins.lv/index.php?valoda=lv&sadalja=info

http://domeins.lv/index.php?valoda=lv&...ook&lappa=3

 

tātad dazham sadaljam var but lapas citam ne, pietam , piemeram valodas parametrs nav obligāts, jeb pec defulta tas ir piemeram latvieshu.

 

kā to visu pārveidot uz:

 

http://domeins.lv/lv/1'>http://domeins.lv/lv/1

http://domeins.lv/lv/1/3

ka ari butu pieejams shadas versijas ka http://domeins.lv/1/3'>http://domeins.lv/1/3 (valoda nav noradita)

 

Tam nepieciesham .htacces fails, apmeeram shaads:

 

Options +FollowSymLinks
RewriteEngine on
RewriteRule index/(.*)/(.*)/(.*)/(.*)/$ /index.php?$1=$2&$3=$4

 

tas gan ne tuvu nedar to, ko man vajag, tb, tas izveido kaut ko taadu:

http://domeins.lv/lang/lv/sadalja/guestbuuk/lapa/3'>http://domeins.lv/lang/lv/sadalja/guestbuuk/lapa/3

 

pietam ievadot vienkaarshi http://domeins.lv/ nekas nestraada, ka ari neievadot kadu no parametriem ir sviests.

 

Atkodu, ka celji uz javaskriptiem, css failiem, bildeem un tml drazu, janorada pilna veidaa:

http://domeins.lv/bildes/vienabilde.jpg Varbut ir kadi citi risinajumi?

 

Ka izveidot pareizu rulli?

Varbut kads latviski iemetis to sintaksi, paskaidros izdeju, ta nedaudz izmeljoshaak.

Ka neka latvijas sveetki, esiet patrioti ;)

Link to comment
Share on other sites

.htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?path=$1 [QSA,L]

Padotais URLis būs mainīgajā $_GET['path']

Tālāk jau elementāri, ņem explodē pa slash un kombinē kā patīk

Link to comment
Share on other sites

  • 2 weeks later...

Paprasam adresi /test/1 viss notiek. Bet ar to pašu plus slashu galā - nē.

Nejēdzu uzrakstīt sakarīgu RewriteRule.

Pagaidām izskatās šādi, cik nu man sanāca:

 

//nodzēsts

Edited by Val
Link to comment
Share on other sites

Pārrakstīju .htaccess savādāk, bet rezultāta taspats

RewriteEngine on
RewriteRule ^.htaccess$ - [F]
RewriteCond %{REQUEST_URI} !\.(css|js|jpg|gif|jpeg)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?id=$1 [QSA,L]

 

Problēma tajā vietā, ka atverot kautko ar / galā netiek vairs atrasts style.css un bildes, kurām adreses ir relatīvās. Attiecīgi ar slashu galā lapa saprot, ka ir cita mape un relatīvā adrese nobrūk, kā arī atver index.php. Bez slasha darbojas ok

Link to comment
Share on other sites

×
×
  • Create New...