Regular expression i htaccess regex, PCRE, POSIX, upotreba Apache .htaccess , mod_rewrite |
|
Alati teme | Način prikaza |
09. 10. 2006. | #1 |
Boban Karišik
Expert
|
.htaccess problem
Ovo verovatno ne ide u php, ali ne znam gde drugde da ga stavim, neka moderatori prebace temu gde misle da treba da ide(samo ne u djubre )
Evo kratak opis problema, pravim neku scriptu koja treba da bude seo friendly. To sam resio preko .htaccess fajla, evo kako on ozgleda: Kôd:
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+[^/])$ $1/ [R,L] RewriteRule ^login(.*)/$ /login.php [L] RewriteRule ^admin/(.*)/$ /admin.php?act=$1 [L] RewriteRule ^(.*)/$ /index.php?act=$1 [L] Ja uzmem i prepravim kod da izgleda ovako: Kôd:
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^script/(.+[^/])$ $1/ [R,L] RewriteRule ^script/login(.*)/$ /login.php [L] RewriteRule ^script/admin/(.*)/$ /admin.php?act=$1 [L] RewriteRule ^script/(.*)/$ /index.php?act=$1 [L] Da li neko zna gde gresim? Hvala!
__________________
Ako već nisi Anđeo, bar budi čovek... |
09. 10. 2006. | #2 |
Milan Cvejic
Wrote a book
|
Lupam sada, ali mozda je problem u
Kôd:
RewriteBase / Kôd:
RewriteBase /script/
__________________
http://weevify.com |
09. 10. 2006. | #3 |
expert
Expert
|
ja sam TOTALNI laik za .htaccess, ali, zar ne bi trebalo da u drugom slucaju RewriteBase bude "/script" a ne "/", a RewriteRule-ovi ostaju nepromijeneni, tj:
Kôd:
RewriteBase /script RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+[^/])$ $1/ [R,L] RewriteRule ^login(.*)/$ /login.php [L] RewriteRule ^admin/(.*)/$ /admin.php?act=$1 [L] RewriteRule ^(.*)/$ /index.php?act=$1 [L] edit prestize me LiquidBrain
__________________
Poslednja izmena od oliver : 09. 10. 2006. u 20:21. |
09. 10. 2006. | #4 |
Python Ambassador
Master
|
Probaj:
Kôd:
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^login/$ ./login.php [L] RewriteRule ^admin/(.*)/$ ./admin.php?act=$1 [L] RewriteRule ^(.*)/$ ./index.php?act=$1 [L] </IfModule>
__________________
Python Ambassador of Serbia |
09. 10. 2006. | #5 |
Boban Karišik
Expert
|
Probao sam i to, ali nije uspelo...
Mislim, ne prijavljuje mi 404 vec me baca na http://root/index.php a probao sam onda i da mu stavim ovako Kôd:
RewriteEngine On RewriteBase /script/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^script/(.+[^/])$ $1/ [R,L] RewriteRule ^script/login(.*)/$ /login.php [L] RewriteRule ^script/admin/(.*)/$ /admin.php?act=$1 [L] RewriteRule ^script/(.*)/$ /index.php?act=$1 [L]
__________________
Ako već nisi Anđeo, bar budi čovek... |
09. 10. 2006. | #6 |
Python Ambassador
Master
|
Ajd daj malo detaljnije informacije o podešavanjima:
* ime servera * lokacija web root-a na disku * relevantnu Virtual Host sekciju - ako postoji * relativnu putanju do skripti u odnosu na web root na disku * relativnu putanju do skripti u odnosu na web root za http * putanje koje pokušavaš da dobiješ * putanje koje dobijaš, ili grešku ako nju dobijaš * relativnu putanju do .htaccess fajla u odnosu na web root na disku I ako nije problem pošalji to za .htaccess koji sam ti dao, da ne analiziram druge.
__________________
Python Ambassador of Serbia |
09. 10. 2006. | #7 |
Dejan Ranisavljevic
Certified
|
Probaj sa:
Kôd:
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On ... |
09. 10. 2006. | #8 |
Ivan Dilber
Sir Write-a-Lot
|
Ako stavis RewriteBase da ti je script, onda ti ne treba script/ u prvom parametru, jer se to automatski skida. U principu j RewriteBase bitan samo kad se koristi i mod_alias da bi Apache umeo da se snadje gde s sta nalazi, ovako kako ti radis mozes slobodno da ostavis kao u prvom primeru i da onda rewrite-ujes celu putanju.
Dakle, nesto ovako: Kôd:
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^script/(.+) /$1 [R,L] RewriteRule ^script/login(.*) /login.php [L] RewriteRule ^script/admin/(.*)/? /admin.php?act=$1 [L] RewriteRule ^script/(.*)/? /index.php?act=$1 [L] Ako isprobavas ovo u localu (ili imas pristup httpd.conf na serveru) onda je najbolje da dodas u definiciju virtuelnog hosta: Kôd:
RewriteLog /neka/putanja/rewrite.log RewriteLogLevel 5
__________________
Leadership is the art of getting people to want to do what you know must be done. |
09. 10. 2006. | #9 |
profesionalac
Professional
Datum učlanjenja: 15.06.2005
Lokacija: Chicago IL, USA
Poruke: 209
Hvala: 12
12 "Hvala" u 11 poruka
|
Ili mozes da SVE prebacujes na index.php, a da ti on bude switch. Onda u njemu pogledas path koji je trazen, pa mozes da odradis i header(location), a i include. ;-)
|
10. 10. 2006. | #10 |
Boban Karišik
Expert
|
Hvala Vam svima na odgovorima, evo kako sam resio problem.
Kôd:
RewriteEngine On RewriteBase /script/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.+[^/])$ $1/ [R,L] RewriteRule ^login(.*)/$ /script/login.php [L] RewriteRule ^admin/(.*)/$ /script/admin.php?act=$1 [L] RewriteRule ^(.*)/$ /script/index.php?act=$1 [L]
__________________
Ako već nisi Anđeo, bar budi čovek... |
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
[.htaccess] problem kod broja strane | apex | Regular expression i htaccess | 4 | 13. 11. 2009. 09:42 |
.htaccess | Suske | Sva početnička pitanja | 1 | 11. 06. 2009. 17:28 |
Htaccess, mod_rewrite problem | nEdImT | Regular expression i htaccess | 5 | 29. 01. 2008. 14:25 |
.htaccess pitanjce | Dzordz | Regular expression i htaccess | 7 | 07. 03. 2007. 13:47 |
.htaccess problem | Dragan Babić | Regular expression i htaccess | 3 | 26. 10. 2005. 13:03 |