[LØST] Blande php include og htaccess

Diskuter andre serversidespråk / -teknologier som J2EE, .htaccess, Progress 4GL, CGI/Perl m.m

[LØST] Blande php include og htaccess

Innlegg ZnigeN » 17.04.2011 1:37

Hei!
Litt usikker på om jeg posta i riktig kategori, men det står .htaccess under beskrivelsen så la gå :)

Jeg har testet ut denne .htaccess kommandoen:
Kode: Merk alt
RewriteEngine On
RewriteRule ^([^\.\?]+)(\?.*)?$ $1.php

For å skjule .php endelse etter url'n, slik at f.eks. http://domene.com/biografi.php blir til bare http://domene.com/biografi

Vanligvis liker jeg også å bruke et enkelt php include script slik at jeg samler alle innholds-filene i en "inc" mappe.

Spørsmålet mitt blir egentlig hvordan det er mulig å mikse disse to sammen?

Jeg kan skjule index.php i include script ved å bare linke til http://domene.com/?side=biografi, men jeg ønsker at det skal stå http://domene.com/biografi - selv om jeg bruker include script.

Er dette mulig, eller blir jeg nødt til å ha en .php fil for hver side? Altså en index.php, en biografi.php osv.

Tusen takk for alle svar!
Sist endret av ZnigeN den 06.05.2011 22:11, endret 1 gang
Brukerens avatar
ZnigeN
Medlem
 
Innlegg: 938
Registrert: 13.07.2005 1:30
Bosted: Grimstad

Re: Blande php include og htaccess

Innlegg DavidS » 17.04.2011 4:14

Du kan:
* la linker som /biografi/ peke tik index.php?p=biografi
* la linker som /biografi/ peke til inc/biografi.php

^([^.]+)\.php$ inc/$1.php /biografi/ -> inc/biografi.php

Skreb regexen på iPad, så feil kan forekomme
DavidS
Seniormedlem
 
Innlegg: 3667
Registrert: 17.05.2006 17:08

Re: Blande php include og htaccess

Innlegg ZnigeN » 17.04.2011 18:17

Tusen takk for svar.
Jeg prøvde litt forskjellige varianter av kodesnutten din men jeg ender bare opp med error 500 (Internal Server).

Mod_rewrite skal ikke være disabled av hosten på noe vis, fordi jeg bruker mod_rewrite på andre sider som er på samme host.

Har også prøvd å sette inn Options +FollowSymlinks på toppen av .htaccess fila, men jeg får samme resultat.

Jeg leste litt om ".htaccess programmering", men det er litt gresk for meg enda,
kan det være feil på denne?
Kode: Merk alt
RewriteRule ^([^.]+)\.php$ inc/$1.php /biografi/ -> inc/biografi.php
Brukerens avatar
ZnigeN
Medlem
 
Innlegg: 938
Registrert: 13.07.2005 1:30
Bosted: Grimstad

Re: Blande php include og htaccess

Innlegg Jannis » 20.04.2011 10:47

Kode: Merk alt
RewriteEngine On
RewriteRule ^([^\.\?]+)(\?.*)?$ index.php?side=$1


Virker den?
Lykketallet mitt er 127001.
Brukerens avatar
Jannis
Medlem
 
Innlegg: 195
Registrert: 27.10.2008 9:38

Re: Blande php include og htaccess

Innlegg DavidS » 20.04.2011 11:50

Beklager, men teksten /biografi/ -> inc/biografi.php var ikke endel av htaccess-innholdet :) Det var ment som å vise deg hva regexen gjorde, men jeg ser når det virket mot sin hensikt.
DavidS
Seniormedlem
 
Innlegg: 3667
Registrert: 17.05.2006 17:08

Re: Blande php include og htaccess

Innlegg ZnigeN » 20.04.2011 12:41

Jannis skrev:
Kode: Merk alt
RewriteEngine On
RewriteRule ^([^\.\?]+)(\?.*)?$ index.php?side=$1


Virker den?

Hei!
Takk for forslaget, men det ser ikke ut til å skjule url'n.
Hvis jeg linker til "index.php?side=forside" så dukker det fortsatt opp "index.php?side=forside" i URL'n.

DavidS:
Åja haha, så feil kan man altså ta. Jeg testet igjen og tok vekk /biografi/ -> inc/biografi.php, men jeg fikk fortsatt 500 Internal Server error.
Brukerens avatar
ZnigeN
Medlem
 
Innlegg: 938
Registrert: 13.07.2005 1:30
Bosted: Grimstad

Re: Blande php include og htaccess

Innlegg ZnigeN » 06.05.2011 22:10

Hei!

Problemet viste seg å være at siden nettsiden jeg holder på med ligger i en undermappe og ikke i root-mappen så klarte ikke .htaccess fila å finne fram av seg selv.
Det løste seg hvis jeg skrev hele stien i .htaccess filen. Jeg trodde dette kun var nødvendig dersom htaccess fila ligger i root mappa, ikke i den mappen det gjelder. Men slik er det altså ikke :)

Vil bare legge til at koden din, Jannis, fungerer helt greit :)

Helt utrolig at jeg ikke har tenkt på dette... ville bare si ifra dersom andre har samme problem :)
Brukerens avatar
ZnigeN
Medlem
 
Innlegg: 938
Registrert: 13.07.2005 1:30
Bosted: Grimstad

Re: [LØST] Blande php include og htaccess

Innlegg Nukleuz » 30.06.2011 22:29

Hei,

det løser du med "RewriteBase", eks:

Kode: Merk alt
RewriteBase /Path/To/Where/Index/Is/
Mvh
Joachim M. Giæver
http://development.giaever.org
Brukerens avatar
Nukleuz
Seniormedlem
 
Innlegg: 1659
Registrert: 09.12.2006 2:08
Bosted: Tromsø


Gå til Serversideprogrammering og -språk

Hvem er i forumet

Brukere som leser i dette forumet: Google [Bot] og 5 gjester