Avatar billede doek Nybegynder
16. januar 2003 - 19:47 Der er 9 kommentarer og
1 løsning

mod_rewrite [P]

jeg har en webserver på en maskine der kan ses på internettet, herpå har jeg en bibliotek hvori der ligger en .htaccess fil der henter sider fra en maskine der ikke kan ses fra internettet ( IP 10.0.0.25 ) ved hjælp af mod_rewrite og proxy.

Første maskine har debian og apache
Anden maskine har XP og apache

Det virker, næsten.

Der er ingen problemer i at hente 'index.php'
men jeg kan ikke hente 'test 2.php' ( også kendt som 'test%202.php' ).

Der er ingen problemer i at se 'test 2.php' på nogen af maskinerne direkte, altså ikke via proxy.

Spørgsmålet er så: Hvad skal jeg gøre, for at undgå at skulle omdøbe alle mine filnavne til noget uden mellemrum og dermed være istand til at hente dem gennem proxy?
Avatar billede erikjacobsen Ekspert
16. januar 2003 - 19:59 #1
Hvad mon der står i din .htaccess ?
Avatar billede doek Nybegynder
16. januar 2003 - 20:10 #2
så vidt jeg husker står der

RewriteEngine on
RewriteRule (.*) http://10.0.0.25/$1 [P]

jeg kan ikke se det lige fra hvor jeg er.
Som sagt kan sidder uden mellemrum i navnet godt ses.
Avatar billede erikjacobsen Ekspert
16. januar 2003 - 22:58 #3
Så gætter jeg på at det er fordi din URL i virkeligheden
skal være

http://10.0.0.25/test%202.php

hvor %20 står for dit mellemrum. Det er så forklaringen,
tror jeg, men ikke løsningen :)
Avatar billede doek Nybegynder
16. januar 2003 - 23:37 #4
det kommer den jo også til at være (sådan da)
idet jeg går ind på min side www.minside.dk/proxyside/test 2.php ( eller test%202.php ) vil den hente siden fra den lokale maskine på netop http://10.0.0.25/test%202.php .

Det er jo det $1 står for, så vidt jeg har forstået.

Der er ikke noget galt i på lokalnetærket at gå ind på http://10.0.0.25/test%202.php men proxy'en vil bare ikke, men den vil gerne hente http://10.0.0.25/index.php hvor der ikke er mellemrum i filnavnet.

Så desværre mangler løsningen til at hente filnavne med mellemrum via proxy.
Avatar billede erikjacobsen Ekspert
17. januar 2003 - 00:07 #5
Er der forskel på at kalde "minside.dk" med mellemrum og med %20 ?
Avatar billede doek Nybegynder
17. januar 2003 - 00:13 #6
Mest nej, den ændre selv stien til at være med %20, jeg ved ikke om man kan tvinge den til ikke at gøre det og om det vil have en virkning.
Avatar billede Slettet bruger
17. januar 2003 - 09:02 #7
Et par forslag:
Du kan prøve at ændre din .htaccess til
ProxyPass / http://10.0.0.25/
ProxyPassReverse / http://10.0.0.25/

Det løser nok ikke problemet men er hurtigere end mod_rewrite.
Hvis du kører apache 1.3 på din første maskine kan du prøve at opdatere til apache 2.0. Proxy modulet er blevet omskrevet fuldstændig i version 2.0, og understøtter blandt andet HTTP/1.1. Jeg ved ikke om det løser dit problem, men det vil under alle omstændigheder kører væsentlig hurtigere end din nuværende løsning. Proxy modulet fra apache 1.3 har gennem tiden haft en del fejl, så det er meget muligt at en opdatering vil løse problemet.
Avatar billede doek Nybegynder
17. januar 2003 - 16:00 #8
Det er Apache 1.3 der ligger på første maskine, men da det ikke er min maskine, skal jeg være sikker på det er en løsning, for at have en chance for de vil teste det.

Jeg vil forsøge mig med ProxyPass.
Avatar billede doek Nybegynder
22. januar 2003 - 20:24 #9
Hmm jeg har siddet og kigget på ProxyPass og det kræver desværre ændringer på hovedserveren, som jeg ikke kan lave, så det kan jeg ikke teste.
Avatar billede doek Nybegynder
27. april 2003 - 20:24 #10
lukker og slukker
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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