Avatar billede alvion Nybegynder
10. august 2004 - 21:21 Der er 10 kommentarer og
1 løsning

Apache2: Problem med at installere mod_rewrite.so

Jeg har installeret Apache 2.0.48 på min FreeBSD 4.9. Jeg vil nu så tilføje mod_rewrite, og har prøvet følgende configure-string:

./configure \
--with-layout=Apache \
--prefix=/usr/local/apache \
--datadir=/data/apache/webroot \
--sysconfdir=/data/apache/conf \
--localstatedir=/data/apache \
--enable-module=so \
--enable-shared=rewrite

Men efter "make" er der ikke blevet lavet en mod_rewrite.so fil. Hvad gør jeg forkert?
Avatar billede htm Nybegynder
10. august 2004 - 21:36 #1
Der skulle gerne ikke blive dannet i mod_rewrite.so fil, så det er helt korrekt. :-)

Når du enabler mod_rewrite via din configure ( --enable-shared=rewrite ) enabler den mod_rewrite som shared og ikke som modul. Hvilket betyder at du skal recompilere hvis di vil slå det fra.

Med andre ord du ligger det ind i sourcen at det er anablet.

Hvis du vil have en .so fil skal du bruge mod_rewrite sourcen, følger vist nok med apache og så bruge apxs ( http://httpd.apache.org/docs-2.0/programs/apxs.html ) til at danne den med bagefter.

Har du problemer med at mod_rewrite ikke virker ?
Avatar billede alvion Nybegynder
10. august 2004 - 21:40 #2
Hmm....

Hvad er den "mest korrekte" måde at slå mod_rewrite til i Apache 2?
Avatar billede htm Nybegynder
10. august 2004 - 21:51 #3
Der er ikke nogen mest korrekt måde :-)

Kommer an på smag og behov. hvis du har behov for at slå mod_rewrite fra og til hele tiden så bruger du modul, ellers er det ligemeget :D
Avatar billede alvion Nybegynder
10. august 2004 - 21:59 #4
Ok...

Mit problem er bare, at hvis jeg bruger ovenstående konfiguration, så får jeg en fejl, når jeg skriver i http.conf skriver:

<Directory blabla...>
RewriteEngine on
...

www# /usr/local/apache/bin/apachectl configtest
Syntax error on line 1087 of /data/apache/conf/httpd.conf:
Invalid command 'RewriteEngine', perhaps mis-spelled or defined by a module not included in the server configuration
Avatar billede alvion Nybegynder
10. august 2004 - 22:17 #5
Hehe... Fandt løsningen:

./configure \
--with-layout=Apache \
--prefix=/usr/local/apache \
--datadir=/data/apache/webroot \
--sysconfdir=/data/apache/conf \
--localstatedir=/data/apache \
--enable-so \
--enable-rewrite=shared

OG så er det lige en god ide at lave en "make clean", inden jeg (for Gud ved hvilken gang) make'er skidtet. :-)

Men du har alligevel fortjent point - du afklarede nogle ting for mig.
Avatar billede htm Nybegynder
10. august 2004 - 22:19 #6
hmmm - ja så er det ikke enablet.

Ser også ud til der er fejl i din configure i forhold til dok.

prøv sådan i stedet:

--enable-rewrite=shared

http://httpd.apache.org/docs-2.0/install.html#configure
http://httpd.apache.org/docs-2.0/programs/configure.html
Avatar billede htm Nybegynder
10. august 2004 - 22:20 #7
he he - der var jeg allivel for langsom :-)
Avatar billede alvion Nybegynder
10. august 2004 - 22:29 #8
Bare lige for at presse citronen:

RewriteEngine on
RewriteRule ^(.*)$ _index.php?path=$1 [qsappend]

Når jeg laver en http://www.mitsite.dk/foo

Får jeg følgende fejl:

HTTP 400 - Ugyldig anmodning

Jeg HAR en fil kaldet _index.php, som er læsbar.
Avatar billede htm Nybegynder
11. august 2004 - 17:57 #9
Problemet er nok at du ikke laver noget tjek men bare redirecter til index.php - den bliver jo self. også redirectet..., og sådan bliver det ved.

Prøv noget tjek ala dette: ( har også lige smidt rewritebase på, det sikrer at du altid går ud fra rodbiblioteket )

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !^index.php
RewriteRule ^(.*)$ _index.php?path=$1 [qsappend]
Avatar billede htm Nybegynder
11. august 2004 - 17:58 #10
index.php skal self være _index.php :-)
Avatar billede alvion Nybegynder
11. august 2004 - 20:34 #11
Yipeeeee!!!! Thanks
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester