Gå til innhold

RewriteRule med to parametere


Anbefalte innlegg

Heisann!

 

Jeg trenger litt hjelp her med RewriteRules.

 

Det jeg ønsker er at si at lenken er:

 

http://side.com/nyhet/1

 

Så skal parameteren bli slik: http://side.com/?inc=$1(nyhet)&id=$2(id)

 

Men dersom det ikke finnes to parametere skal den være f.eks. slik:

 

http://side.com/nyhet/

 

http://side.com/?inc=$1(nyhet)

 

Beklager dersom dette var dårlig forklart :)

 

Takk på forhånd :)

Lenke til kommentar
Videoannonse
Annonse

Hei!

 

Sitter nå med denne koden:

 

RewriteEngine on
RewriteBase /

RewriteCond %{REQUEST_URI} !^(/images|/style.css|/google.php|/content)(.*)$
RewriteRule ^([^/]+)/?$ index.php?inc=$1

RewriteCond %{REQUEST_URI} !^(/images|/style.css|/google.php|/content)(.*)$
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?inc=$1&id=$2

 

Problemet jeg får er at parameteren ?inc= alltid sier index.php.

Lenke til kommentar

Får ikke testet det du skriver, men jeg tipper at det kommer av betingelsene dine. Selv pleier jeg bare å skrive er rewriting skal foregå dersom URLen som requestes ikke er en fil eller en mappe.

 

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d

Lenke til kommentar

Testa følgende på VPSen, funket gull. Sannsynligvis noe avhengig av din konfigurasjon, men den vet jeg ingen ting om.

 

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?inc=$1 [L,QSA]
RewriteRule ^([^/]+)/([0-9]+)/?$ index.php?inc=$1&id=$2 [L,QSA]

Lenke til kommentar

Hva mener du «hvor bildene er plassert»? Hva er egentlig problemet? Skal nevnes at betingelsene for at omskrivningen skal foregå er at banen ikke er en fil eller en mappe. Dvs. det funker å navigere rundt i mappene dine fortsatt. Bildene er fremdeles tilgjengelige.

Lenke til kommentar

Du gir meg ikke akkurat mye å gå på her. Er det der en soft 404? Er der en kontroller som prøver å inkludere «images/img01.jpg» som om det var en inkluderbar PHP-fil? Legg følgende i .htaccess og kjør deretter en print_r på GET når du prøver å aksessere bildet ditt.

 

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ index.php?inc=$1&filename=%{REQUEST_FILENAME}&root=%{DOCUMENT_ROOT} [L,QSA]
RewriteRule ^([^/]+)/([0-9]+)/?$ index.php?inc=$1&id=$2&filename=%{REQUEST_FILENAME}&root=%{DOCUMENT_ROOT} [L,QSA]

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...