Kao u naslovu :
index.php?go=nesto prevesti u index.php/nesto
tj. ako kucam u addres baru http://neki_domen/index.php/nesto ili samo http://neki_domen/nesto
da odradi http://neki_domen/index.php?go=nesto
Ubi me ovo vec dva dana
sve sam zivo isprobao i nista.
da ne zaboravim:
isprobavao sam na razne nacine u .htaccess fajlu
mod_rewrite - index.php?go=nesto => index.php/nesto - kako?
Zaključano
Zakačeno
RewriteRule ^([^.]+)/?$ index.php?go=$1 [L]
Potpis
Jeff, one day you’ll understand that it’s harder to be kind than clever.
Hvala, ali ne radi i javlja mi:
"Bad request!
Your browser (or proxy) sent a request that this server could not understand.
If you think this is a server error, please contact the webmaster.
Error 400"
Inace aplikaciju testiram na svojoj masini
XAMPP pod Windows-om(WAMPP)
Apache 2.0.54
PHP 4.3.10
vhost u HTTPD.conf
<VirtualHost www.sajt.com>
ServerAdmin [email protected]
DocumentRoot /xampp/htdocs/vhost/sajt/www
ServerName www.sajt.com
ErrorLog /xampp/htdocs/vhost/sajt/www/logs/example.com-error_log
CustomLog /xampp/htdocs/vhost/sajt/www/logs/example.com-access_log common
</VirtualHost>
i mod_rewrite je ukljucen
"Bad request!
Your browser (or proxy) sent a request that this server could not understand.
If you think this is a server error, please contact the webmaster.
Error 400"
Inace aplikaciju testiram na svojoj masini
XAMPP pod Windows-om(WAMPP)
Apache 2.0.54
PHP 4.3.10
vhost u HTTPD.conf
<VirtualHost www.sajt.com>
ServerAdmin [email protected]
DocumentRoot /xampp/htdocs/vhost/sajt/www
ServerName www.sajt.com
ErrorLog /xampp/htdocs/vhost/sajt/www/logs/example.com-error_log
CustomLog /xampp/htdocs/vhost/sajt/www/logs/example.com-access_log common
</VirtualHost>
i mod_rewrite je ukljucen
probao sam ovako:
i kao nesto radi , ali promenjivu nadogradi , pa umesto da bude
"go=vrednost"
ona je
"go=vhost/sajt/www/vrednost".
Kako ovo da resim?
Code:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^([^.*]+)/?$ http://www.sajt.com/index.php?go=$1 [L]
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^([^.*]+)/?$ http://www.sajt.com/index.php?go=$1 [L]
i kao nesto radi , ali promenjivu nadogradi , pa umesto da bude
"go=vrednost"
ona je
"go=vhost/sajt/www/vrednost".
Kako ovo da resim?
Ipak sam nasao kakvo-takvo resenje
u .htaccess-u
a u PHP izbacio visak
ako neko ima bolje resenje, neka postuje.
u .htaccess-u
Code:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
RewriteRule ^([^.*]+)/?$ /index.php?go=$1 [NC,L]
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
RewriteRule ^([^.*]+)/?$ /index.php?go=$1 [NC,L]
a u PHP izbacio visak
Code:
if(!isset($_GET['go'])){
$go='default';
} else {
if(strstr($_GET['go'],'/')){
$_GET['go']=explode('/',$_GET['go']);
$num=count($_GET['go']);
$_GET['go']=$_GET['go'][$num-1];
$go=$_GET['go'];
} else{
$go=$_GET['go'];
}
}
if(!isset($_GET['go'])){
$go='default';
} else {
if(strstr($_GET['go'],'/')){
$_GET['go']=explode('/',$_GET['go']);
$num=count($_GET['go']);
$_GET['go']=$_GET['go'][$num-1];
$go=$_GET['go'];
} else{
$go=$_GET['go'];
}
}
ako neko ima bolje resenje, neka postuje.
Nisam hteo da otvaram novi post.
Imam sledece situacije:
domen.com/nesto/
domen.com/nesto1/
domen.com/nesto2/
domen.com/search/?search=string&submit=Search&opcija=5
U .htaccess=u imam
U php-u dobijam $Page, ali trebam poslednju opciju, za search, da dobiejm i $_GET
Kako?
Imam sledece situacije:
domen.com/nesto/
domen.com/nesto1/
domen.com/nesto2/
domen.com/search/?search=string&submit=Search&opcija=5
U .htaccess=u imam
Code:
RewriteEngine on
RewriteRule ^(.*)/$ /index.php?Page=$1 [L]
RewriteEngine on
RewriteRule ^(.*)/$ /index.php?Page=$1 [L]
U php-u dobijam $Page, ali trebam poslednju opciju, za search, da dobiejm i $_GET
Kako?
Potpis
routing protocols enable routers to route routed protocols!
Code:
RewriteRule ^(.*)/$ index.php?Page=$1 [L,QSA]
RewriteRule ^(.*)/$ index.php?Page=$1 [L,QSA]
Potpis
Banned - Not available
A kako da u nekom direktoriumu da iskljucim ovaj rewrite?
Evo konkretno:
imam http://www.domen.com/page/ (ovde radi gornji rewrite)
imam http://users.domen.com/. Direktorium za ovaj poddomen je http://www.domen.com/users/ tako da kad pristupim http://users.domen.com/ prihvata gornji rewrite rule.
Kako da za ovaj poddomen prepravim rewrite rule? Da bude "default" bez rewrite rula?
Evo konkretno:
imam http://www.domen.com/page/ (ovde radi gornji rewrite)
imam http://users.domen.com/. Direktorium za ovaj poddomen je http://www.domen.com/users/ tako da kad pristupim http://users.domen.com/ prihvata gornji rewrite rule.
Kako da za ovaj poddomen prepravim rewrite rule? Da bude "default" bez rewrite rula?
Potpis
routing protocols enable routers to route routed protocols!
izmenjeno 2 puta, poslednji put Gojko Vujovic 25.10.2006. u 22:36
Izmene poruke
- Gojko Vujovic25.10.2006. u 22:36zapis iz teksta poruke
- Dejan Krstic25.10.2006. u 21:33zapis iz teksta poruke
Ajde necu ni ja da otvaram novi thread buduci da mi treba nesto mnogo slicno ideji iz prve poruke.
Dakle treba mi ovo: www.nesto.com/aaa/bbb/ccc -> www.nesto.com/index.php?args=aaa/bbb/ccc
To je isto ono sto je trazio covek u prvom post-u.
Ali...
u direktorijumu u kom se nalazi htaccess i index.php se nalaze jos neki fajlovi a meni treba da gore navedeno radi UVEK sem kada je u pitanju index.php. Znaci ako se kroz GET prosledi zahtev za fajlom ili direktorijumom koji nije index.php ali ipak postoji da se i u tom slucaju izvrsi rewrite.
Dakle, ovo radi ali samo pod uslovom da je fajl koji je zahtevan ne postoji.
Pokusao sam da maknem red RewriteCond ali onda ulazi u mrtvu petlju i puca.
Pokusao sam i ovako:
...dakle da radi samo u slucaju da nije zahtevan index.php i donekle sam uspeo.
Naime, kada pokusam da otvorim stranicu:
www.nesto.com/smarty/
dobijem -> www.nesto.com/index.php?arg=smarty i u address bar-u mi pise www.nesto.com/smarty
ali ako trazim:
www.nesto.com/smarty (dakle bez slash-a na kraju)
onda dobijem www.nesto.com/index.php?arg=smarty ali mi u address bar-u pise www.nesto.com/smarty/?args=smarty
Dakle, u tom slucaju sve lepo funkcionise osim sto se menja situacija u address bar-u ukoliko ne stavim slash na kraju.
Ima li neko ideju kako da resim problem? Mogu da okacim i RewriteLog (koji sam gledao ali ne kapiram u cemu je problem) ako neko misli da ce to biti od pomoci...
Dakle treba mi ovo: www.nesto.com/aaa/bbb/ccc -> www.nesto.com/index.php?args=aaa/bbb/ccc
To je isto ono sto je trazio covek u prvom post-u.
Ali...
u direktorijumu u kom se nalazi htaccess i index.php se nalaze jos neki fajlovi a meni treba da gore navedeno radi UVEK sem kada je u pitanju index.php. Znaci ako se kroz GET prosledi zahtev za fajlom ili direktorijumom koji nije index.php ali ipak postoji da se i u tom slucaju izvrsi rewrite.
Code:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
RewriteRule ^([^.*]+)/?$ /index.php?go=$1 [NC,L]
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteBase /
RewriteRule ^([^.*]+)/?$ /index.php?go=$1 [NC,L]
Dakle, ovo radi ali samo pod uslovom da je fajl koji je zahtevan ne postoji.
Pokusao sam da maknem red RewriteCond ali onda ulazi u mrtvu petlju i puca.
Pokusao sam i ovako:
Code:
RewriteEngine On
RewriteCond %{REQUEST_URI} !/index.php
RewriteBase /
RewriteRule ^([^.*]+)/?$ /index.php?go=$1 [NC,L]
RewriteEngine On
RewriteCond %{REQUEST_URI} !/index.php
RewriteBase /
RewriteRule ^([^.*]+)/?$ /index.php?go=$1 [NC,L]
...dakle da radi samo u slucaju da nije zahtevan index.php i donekle sam uspeo.
Naime, kada pokusam da otvorim stranicu:
www.nesto.com/smarty/
dobijem -> www.nesto.com/index.php?arg=smarty i u address bar-u mi pise www.nesto.com/smarty
ali ako trazim:
www.nesto.com/smarty (dakle bez slash-a na kraju)
onda dobijem www.nesto.com/index.php?arg=smarty ali mi u address bar-u pise www.nesto.com/smarty/?args=smarty
Dakle, u tom slucaju sve lepo funkcionise osim sto se menja situacija u address bar-u ukoliko ne stavim slash na kraju.
Ima li neko ideju kako da resim problem? Mogu da okacim i RewriteLog (koji sam gledao ali ne kapiram u cemu je problem) ako neko misli da ce to biti od pomoci...
Evo da se nadovežem na temu da ne otvaram istu...
meni isto treba kao i u prvom postu, mada ne razumem kako to kreirati...
Me treba da kada kucam www.mojdomen.com/modules.php?name=Forums&file=index da ide na www.mojdomen.com/forum
i slicno...
najbolje bi bilo ako neko ima da postavi celi .htacess file, da vidim kako to treba da se odradi!
Unapred hvala :)
meni isto treba kao i u prvom postu, mada ne razumem kako to kreirati...
Me treba da kada kucam www.mojdomen.com/modules.php?name=Forums&file=index da ide na www.mojdomen.com/forum
i slicno...
najbolje bi bilo ako neko ima da postavi celi .htacess file, da vidim kako to treba da se odradi!
Unapred hvala :)
Potpis
Clubbing.rs kreativan konkurs: Ko kaže da se kreativnost ne isplati?
Code:
RewriteRule ^forum/$ /modules.php?name=Forums&file=index [L]
RewriteRule ^forum/$ /modules.php?name=Forums&file=index [L]
ovo ce da radi
Možda AllowOverride AuthConfig nije setovan za folder gde se nalazi .htaccess?
Ja sam kreirao .htacess file i u njega ovo ubacio, ali nista :(
Kada kucam www.mojdomen.com/forum javlja se greska 404 :(
Code:
RewriteEngine on RewriteRule ^forum/?$ /modules.php?name=Forums&file=index [L]
RewriteEngine on RewriteRule ^forum/?$ /modules.php?name=Forums&file=index [L]
Kada kucam www.mojdomen.com/forum javlja se greska 404 :(
Potpis
Clubbing.rs kreativan konkurs: Ko kaže da se kreativnost ne isplati?
Evo reseno, za one kojima ce kasnije zatrebati ista stvar
Cheers,
Tane
Code:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^forum/?$ /modules.php?name=Forums&file=index [L]
RewriteRule ^marketing/?$ /modules.php?name=Content&pa=showpage&pid=5 [L]
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^forum/?$ /modules.php?name=Forums&file=index [L]
RewriteRule ^marketing/?$ /modules.php?name=Content&pa=showpage&pid=5 [L]
Cheers,
Tane
Potpis
Clubbing.rs kreativan konkurs: Ko kaže da se kreativnost ne isplati?