webForumDet fria alternativet

avslutande /

18 svar · 493 visningar · startad av zOLOz

zOLOzMedlem sedan apr. 200297 inlägg
#1

hur gör man för att apache automatiskt ska lägga på / på en adress om det inte finns nån fil med det namnet.
typ

http://localhost/mapp ska bli http://localhost/mapp/
eftersom filen 'mapp' inte fanns men mappen 'mapp' fanns...

RobbanMedlem sedan dec. 19992 555 inlägg
#2

Ger den med defaultinställningarna (i.a.f. på de installationer jag gjort).

zOLOzMedlem sedan apr. 200297 inlägg
#3

hur ser dom ut då?

RobbanMedlem sedan dec. 19992 555 inlägg
#4

Titta i den som följer med Apache (när du laddar ner mjukvaran).

Beroende på om Apache kan slå upp maskinnamnet korrekt så kan man behöva sätta ServerName till något vettigt för att detta fungera.

http://httpd.apache.org/docs/misc/FAQ.html#set-servername

zOLOzMedlem sedan apr. 200297 inlägg
#5

ingen som vet? ska man använda sig av mod_rewrite?

RobbanMedlem sedan dec. 19992 555 inlägg
#6

ingen som vet?

Jo, jag vet.

ska man använda sig av mod_rewrite?

Nä.

Läste du FAQ:n jag länkade till? Det är hyffsat "rude" att bara ignorera ett svar, och fråga vidare som om man inte fått något svar ö.h.t. Jobbar dagligen med Apache-servrar på ett av sveriges största företag, så jag kan Apache. Men det är svårt att lösa ditt problem när man inte får någon input.

Hjälpte det inte att sätta ServerName? Eller vad?

zOLOzMedlem sedan apr. 200297 inlägg
#7

jag såg inte ditt svar först, det var därför det såg ut som att jag ignorerade det.. :/

jag testade att byta servername till http://192.168.0.2/ för att se om det funkade över det lokala nätverket, men det gjorde det inte..

RobbanMedlem sedan dec. 19992 555 inlägg
#8

Ok. Det är lugnt. :)

Du använder alltså IP-adressen för att komma åt webbservern? Om du använder datornamnet i stället (localhost t.ex.), och sätter ServerName till det (enbart namnet, utan http:// eller avslutande /). Eller prova att sätta det till 192.168.0.2 om du inte vill använda namn (osäker på om det fungerar med en IP-adress då jag inte provat det).

Vad säger felmeddelandet du får i webbläsaren när det inte fungerar?

Kort om hur detta fungerar (för att man skall förstå problemet). När din webbläsare skickar en förfrågan om att få http://localhost/mapp så skickar apache tillbaka en redirect till http://<ServerName>/mapp/ (där <ServerName> antingen är det ServerName du angett, eller en DNS-uppslagning om inte ServerName är angett i httpd.conf). Om ServerName är fel satt så kommer detta naturligtvis inte att fungera (eftersom webbläsaren inte kan hitta servern).

zOLOzMedlem sedan apr. 200297 inlägg
#9

hmm.. ska testa..
men det kommer att betyda att jag ska skriva dit mitt ipnummer som jag har mot internet eftersom annars så kommer inte andra personer att komma åt mappen..

om jag sätter ServerName till 192.168.0.2 så kommer den som vill in på http://rikt.iga.ip.numret/mapp att komma till http://192.168.0.2/mapp/ eller har jag fel?

RobbanMedlem sedan dec. 19992 555 inlägg
#10

om jag sätter ServerName till 192.168.0.2 så kommer den som vill in på http://rikt.iga.ip.numret/mapp att komma till http://192.168.0.2/mapp/ eller har jag fel?

Du har aldeles rätt.

RobbanMedlem sedan dec. 19992 555 inlägg
#11

Finns ett alternativt sätt att lösa detta på, som gör att du kan skicka http://rikt.iga.ip.numret/mapp/ till dem som begär http://rikt.iga.ip.numret/mapp samt http://192.168.0.2/mapp/ till dem som begär http://192.168.0.2/mapp och det är mod_rewrite.

Kolla in följande sida för exempel:

http://httpd.apache.org/docs/misc/rewriteguide.html

(Bläddra ner till rubriken "Trailing Slash Problem")

Blir lite mer omständigt, men fungerar. Finns även en andra lösning på detta problem, och det är att använda "virtual hosts", en för varje IP. Då kan du ha en ServerName för varje virtuell server. Känns dock som om det är lite overkill i ditt fall.

http://httpd.apache.org/docs/vhosts/index.html

zOLOzMedlem sedan apr. 200297 inlägg
#12

ok, tack för ditt svar.. ska testa det..

zOLOzMedlem sedan apr. 200297 inlägg
#13

det där med mod_rewrite verkar svårt... dessutom har jag inte det.. (tror jag).. men det funkar iaf fint med ServerName riktigaipnummret

RobbanMedlem sedan dec. 19992 555 inlägg
#14

Tror inte mod_rewrite installeras som default, så du kan eventuellt behöva kompilera om Apache med stöd för mod_rewrite (eller leta upp en binär distribution som inkluderar det) om du vill använda det.

det där med mod_rewrite verkar svårt...

Kan vara lite knepigt att sätta sig in i, men är väldigt användbart när man lärt sig det. :)

colioneMedlem sedan juni 20014 421 inlägg
#15

Har samma problem som zOLOz med avsaknad av efterföljande slashar. Jag änvänder mig dock av localhost eller colione för att nå sidan internt, skälet till att jag installerade apache var för att jag på ett tillfredställande sätt skulle kunna köra spyce (Python server pages). Jag har tittat på det där med mod_rewrite men förstår inte hur eller var jag ska skriva det i httpd.config.

RobbanMedlem sedan dec. 19992 555 inlägg
#16

Har samma problem som zOLOz med avsaknad av efterföljande slashar.

Samma lösning borde fungera för dig. Men du får sätta ServerName till localhost eller colione i stället då.

colioneMedlem sedan juni 20014 421 inlägg
#17

Nepp, är inne och pular i httpd.config och har satt servername till colione...raden ser ut såhär:

ServerName colione:80

Sedan har jag startat om Apache, men det är inget som händer.

ProfSnapeMedlem sedan maj 20034 inlägg
#18

Prova med

ServerName colione
colioneMedlem sedan juni 20014 421 inlägg
#19

Det blev ingen skillnad. Jag skriver colione/spyce men det blir fel skriver jag däreomt colione/spyce/ kommer jag rätt direkt.

137 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)