Portál AbcLinuxu, 16. srpna 2025 05:33


Dotaz: RewriteCond a problem prepisu v mod_rewrite

17.12.2004 11:30 cron
RewriteCond a problem prepisu v mod_rewrite
Přečteno: 408×
Odpovědět | Admin
Mam tenhle kod
RewriteEngine on

RewriteCond  %{REQUEST_URI} ^/([a-z0-9_]+)/([a-z0-9_]+)\.sc$
RewriteRule  ^(.+)/(.+).sc$ http://localhost/ad/index.php?ad=$1&sec=$2 [L,QSA]

RewriteCond  %{REQUEST_URI} ^/([a-z0-9_]+)/([a-z0-9_]+)/([a-z0-9_]+)\.sc$
RewriteRule  ^(.+)/(.+)/(.+).sc$ http://localhost/ad/index.php?ad=$1&sec=$2&rd=$3 [L,QSA]
Stranky se v prvnim pripade oteviraji nejak takhle
http://localhost/ad/prem1/prem2.sc
ale do PHP to prepisuje takhle

http://localhost/ad/index.php?ad=prem1&sec=prem2

problem je ale v tom ze potrebuji pouzit linku

http://localhost/ad/prem1/prem2/prem3.sc

nato by mela slouzit ta druha cast .htaccess kodu. Ale nefunguje, udela to tohle ze do promenny $ad prida hodnotu prem1/prem2 a do promenny $sec prida hodnotu prim3

Ja ale potrebuji to aby
$ad=prem1
$sec=prem2
$rd=prem3
Nevite jak nato? Predem dik za kazdou odpoved.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

17.12.2004 12:03 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: RewriteCond a problem prepisu v mod_rewrite
Odpovědět | | Sbalit | Link | Blokovat | Admin
Od někoho, kdo konfiguruje mod_rewrite, bych čekal, že zná tag pre...

Jak to píšeš, tak ti to předně vůbec nemůže matchnout RewriteCond, protože ta matchuje právě tři lomítka, přičemž /ad/prem1/prem2/prem3.sc obsahuje čtyři. Jinak nerozumím, proč to v RewriteRule rozebíráš znovu, když můžeš použít %1, %2, ...
17.12.2004 12:14 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
Rozbalit Rozbalit vše Re: RewriteCond a problem prepisu v mod_rewrite
pracuji s mod_rewrite a tak jsem mu tam pre doplnil :-)
-- Nezdar není hanbou, hanbou je strach z pokusu.
17.12.2004 12:18 cron
Rozbalit Rozbalit vše Re: RewriteCond a problem prepisu v mod_rewrite
korenovy adresar je http://localhost/ad/ asi preto a ked uz nieco pisete, tak Vas poprosim o to aby jste napsali cely kod, protoze lama jako ja si nemuze domyslet kde ma znaky %1 %2 ulozit.
17.12.2004 12:34 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: RewriteCond a problem prepisu v mod_rewrite
RewriteRule  .* http://localhost/ad/index.php?ad=%1&sec=%2&rd=%3 [L,QSA]
17.12.2004 12:44 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: RewriteCond a problem prepisu v mod_rewrite
Jinak vidím jako jediný problém, že $1 bude /param1, nikoli param1 (nebudu tipovat, co to lomítko v takovém místě způsobí).
17.12.2004 12:51 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: RewriteCond a problem prepisu v mod_rewrite
Ještě bych dodal, že takovéto srandy je často jednodušší prostě přepsat na jeden konstatní skript a rozebrat si $_SERVER['REQUEST_URI'] až v něm.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.