Jump to content
php.lv forumi

Recommended Posts

Posted

Zinu, ka 100x apspriests.

Problēma nav nekāda dižā, runa iet par htaccess, līdz šim esmu darbojies ar htaccess diezgan primitīvā līmenī pārrakstot statiskas lapas.

Šoreiz ir tā, ka vajag pārrakstīt dinamiskus URL.

Anyway url ir šādi:

http://www.domain.com/?l=lv&s=home
vai
http://www.domain.com/?l=ru&s=prepare&c=2

Mainīgie ir visi trīs, kuri tiek iegūti, kā jau noprotat izmantojot $_GET.

 

Ideju ko vēlo iegūt cerams arī sapratāt, smth like:

http://www.domain.com/ru/prepare/2/

 

Varbūt kādam ir aizķēries kāds labs piemērs tieši šai situācijai? :)

 

Paldies.

Posted (edited)

Es piemēram izmantoju .htaccess šādu:

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

 

Un apstrāju:

 

$page = explode("/",$_GET['q']);

 

piem: http://www.domain.com/ru/prepare/2/

 

$page[0]=ru
$page[1]=prepare
$page[2]=2

Edited by zintis8789
Posted (edited)

Paldies.

Un jautājums kā pareizi php failā inklūdot css un js lai izmantojot htaccess tie tiktu atrasti???

Izmantojot $_SERVER['HTTP_HOST'] ? Jeb ir kāds racionālāks veids?

 

Savādāk uztaisot simple nosacījumu lai tiek pārrakstīta valoda, piem, http://www.domain.com/lv/ - tiek pazaudētas visas bildes, css un js...

Edited by Narix
Posted (edited)

Es izmantoju:

http://". $_SERVER['SERVER_NAME']."/js/blabla.js"

 

Ja es saprotu pareizi tad tas it jākabina visur kodā ja izmanto mod_rewrite?

Nu piemēram ja man bija kodā:

<a href=''><img id='slide-img-1' src='./images/slide_1.jpg' class='slide' alt='' /></a>

Tad tagad ir jāraksta

$base="http://". $_SERVER['SERVER_NAME'].";
<a href=''><img id='slide-img-1' src='<php $base; ?>/images/slide_1.jpg' class='slide' alt='' /></a>

 

????

Edited by Narix
Posted

Jā, jo pēc būtības $_SERVER['SERVER_NAME'] izvada tavu linku.

Šausmīgais darbs tādā veidā. Ir varbūt citi risinājumi?

 

Vēl jautājums -

RewriteRule ^([^_]*)\/$ /index.php?l=$1 [QSA]

 

Izmantojot šo netiek ielādēti css un js faili, bet a atkla izmantojot šo -

RewriteRule ^([^_]*)\.html$ /index.php?l=$1 [QSA]

css un js tiek ielādēti korekti. Kur atšķirība? Kapēc tā? Tam .html aliasam tik liela nozīme?

Posted

Nejauc divas dažādas lietas.

 



Options +FollowSymLinks

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

 

$get = explode("/", $_GET['page']);

 

Lai korekti pievienotu CSS/JS utml. failus definē aboslūtu adresi, un vadies pēc šīs adreses jebkurām bildēm, css, js utt failiem.

Posted

Vispār korektu ceļu tēma te arī tikusi apspriesta vairākkārt. Ja tev katrai aplikācijai ir savs domains, tad nekādu problēmu, visur priekšā met slashu. Problēma sākas tajā brīdī, kad aplikācijas ir sadalītas pa mapēm ( domain.tld/app1, domain.tld/app2, etc ). Lielākajā daļā freimworku šī lieta tiek risināta ar funkcijas palīdzību, kurai padod absolūtu ceļu no aplikācijas root'a un funkcija prependo pārējo. Piemēram:

<?
echo l0lz('folder/file.ext'); // /app1/folder/file.ext
?>

  • 2 weeks later...
Posted

Varbūt kāda no šīm rindām tev der?!

 

RewriteEngine On
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?$1=$2
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/$ index.php?$1=$2

RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?$1=$2&$3
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/$ index.php?$1=$2&$3

RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)$ index.php?$1=$2&$3=$s4
RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/$ index.php?$1=$2&$3=$s4

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...