[ goropad @ 29.03.2016. 21:45 ] @
Napravio sam skripte za preslovljavanje i radi se.

Medjutim .htaccess mi izgleda ovako:

Code:
<IfModule mod_rewrite.c>
# if mod_rewrite module is installed and enabled
 
RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
 
RewriteRule ^(.*)$ index.php?content=$1
</IfModule>


pokusavao sam da dodam jos jedan get input

Ali sta sam uradio: izbor jezika sam stavio u $_SESSION

i ne mogu sad da prenesem to u htaccess, ne bih koristio kolacic ni bazu. Problem mi se javlja kad sam negde u okviru sajta i url izgleda ovako:

/www/sajt/tekst-o-nama

link za latinicu na primer glasi ovako: ?lang=la

i onda url dobije:

/www/sajt/tekst-o-nama?lang=la

i nece da radi.

kad sam na index.php, tacnije ja sam uvek na index.php, ali kad nema get inputa onda ?lang=la zavrsava posao.

Takodje sam probao i sa index.php?lang=la

i to radi, ali onda me uvek vraca na pocetnu stranu, jer neko mozda hoce da promeni jezik negde u okviru sajta:

znaci treba mi url da izgleda ovako:
/www/sajt/nesto-o-nama/la

medjutim, mrzi me da svaki link koji pravim dodajem i $_SESSION['lang'] jer se ne zna koja je vrednost.

Da li da probam sa kolacicima ili sta?

_______________
uradio sam i ovo:

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

to radi kad kucam rucno
/www/sajt/nesto-o-nama/la

ali nece preko linka. Isto, to mi prevede, radi, ali mi se gubi css, posto je verovatno kao neki drugi folder, ne znam.

[Ovu poruku je menjao goropad dana 29.03.2016. u 23:16 GMT+1]
[ Nemanja Avramović @ 29.03.2016. 22:21 ] @
Mislim da je najbolje sajt.com/la/naslov-clanka ... ako nemaš jezik u sesiji ti stavi onaj koji je default.

Što se CSS-a tiče, ili ga linkuj od roota (/path/to/file.css, sa sve kosom crtom na početku), ili linkuj sa celim linkom (sajt.com/path/to/file.css)
[ goropad @ 30.03.2016. 04:49 ] @
znao sam da je blizu resenje.
:_____________

odradio sam to, ali ne znam kako da postavim pocetnu inicijalizaciju:

ako mogu preko .htaccess

nikako ne mogu da dobijem izlaz:

sajt.com/ci/uvod:

DirectoryIndex index.php?lang=ci&content=uvod

ubacio sam ovo, i sajt preslovljava u cirilicu, ali nema putanje u statusnoj liniji. Da li moram da radim redirect u htaccess, a to nije dobro, kazu.

[Ovu poruku je menjao goropad dana 30.03.2016. u 06:41 GMT+1]
[ goropad @ 30.03.2016. 06:33 ] @
Da, odradio sam u okviru php:

Code:

else if (!isset($_GET['lang'])) {
    header('Location: ci/uvod');
}
[ Nemanja Avramović @ 30.03.2016. 08:02 ] @
Ne možeš to uraditi sa DirectoryIndex direktivom, ona služi za nešto drugo.

Probaj ovako:
Code:
<IfModule mod_rewrite.c>
# if mod_rewrite module is installed and enabled
 
RewriteEngine On

RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f

RewriteRule ^([a-z]{2})/(.*)$ index.php?lang=$1&content=$2
RewriteRule ^(.*)$ index.php?lang=ci&content=$1
</IfModule>


Ova poslednja linija će ti /uvod automatski setovati na ćirilicu. Ako hoćeš da forsiraš /ci/uvod onda samo stavi poslednju liniju da bude:

Code:
RewriteRule ^(.*)$ index.php?content=$1


(tj. da ne prosleđuje default jezik)
[ goropad @ 30.03.2016. 09:36 ] @
e bas cu probati ovo. jer je opet bolje preko htacc nego u index.php
[ Predrag Supurovic @ 30.03.2016. 09:44 ] @
Davno sam batalio .htaccess. Previse je to ograniceno i komplikovano.

Ja radim ovako:

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

I posle toga u PHP analiziram URI i citam iz njega sve sto mi je potrebno.

Probaj nesto ovako http://seo-url-tools.datavoyage.com/


[ goropad @ 30.03.2016. 10:07 ] @
Sredio sam, sredio. Ma samo me ta pocetna inicijalizacija brinula kad nema ni session ni get. I ne moze ovako kao sto je avram napisao. bar meni nece. nece da rade linkovi.
[ Nemanja Avramović @ 30.03.2016. 18:31 ] @
Da, kao što Peđa kaže, najbolje je sve rewrite-ovati na index.php i onda u samoj skripti analizirati čitav URI (da li ima prosleđen jezik, koji članak se traži, itd)
[ goropad @ 30.03.2016. 19:41 ] @
Da li ovaj kod koji je pedja napisao znaci, da sve sto ide iza domena preusmerava se na index.php:

sajt.com/2016/3/cirilica/neki-clanak

na primer, jel bi to islo na index.php, a u samom index.php da explodujem varijable?
[ Predrag Supurovic @ 30.03.2016. 21:54 ] @
Upravo tako. Imas na linku koji sam dao biblioteku koaj to radi, ima i online demo.