Avatar billede tommyf Nybegynder
16. februar 2001 - 13:16 Der er 8 kommentarer og
1 løsning

Sende til højre eller venstre udfra hvad de skrev i adresselinjen?

Problemstilling:
Ét webhotel hos TDC
TO domæner tilhørende to beslægtede firmaer.
Adgang til TO domænehosting fra TDC (Multihost).
Begge vil pege på index.htm

Opgave:
Kan man lave sådan at hvis de har skrevet:
www.1.dk
Bliver de sendt til undermappen
/1/
Skriver de www.2.dk bliver de sendt til:
/2/

Dette skal foregå UDEN at brugeren opdager det?
Og som bekendt er der ikke adgang til ret meget på TDC\'s server.
Avatar billede andreasn Nybegynder
16. februar 2001 - 13:47 #1
mener faktisk jeg har et script liggende  to sec
Avatar billede andreasn Nybegynder
16. februar 2001 - 13:52 #2
paste\'et
(
<%
\'Dette domain system er skrevet af Stefan Bruhn (www.righteous.dk sb@righteous.dk)
\'Selve ideen er at du opretter en undermappe for hvert domain. Til www.bla.dk ville man lave en mappe
\'der hed /bla.dk. Hvis folk så åbner dit site bliver de i en skjult frame viderestilt til www.bla.dk/bla.dk.
\'Det tog mig et stykke tid at finde ud af hvordan man kunne fjerne www. i domain navnet, men www.warp-space.dk hjalp mig med det.
\'Du skal selvfølgelig selv definere ny titel til dine sider
\'BTW dette script er copyright © Stefan Bruhn

\'Her tager den domænenavnet
name = Request.ServerVariables(\"server_name\")
name2 = Request.ServerVariables(\"server_name\")

\'Hvis domainet har www. foran bliver det fjernet i tilfældet der bruges til mappen.
if Left(name,3) = \"www\" then
name = mid(name,5)
end if
response.write(\"<TITLE>\")

\'Her vælger den <TITLE> til framen din side bliver åbnet i.
\'Her er et lille eksempel:

If name = \"www.bla.dk\" then
response.write(\"www.BLA.DK - Den fedeste BLA side!\")
end if


\'nedenuder kommer så resten af koden til selve framen. http://name2/name = http://www.bla.dk/bla.dk (hvis domæne = www.bla.dk)
%>
</TITLE>
<FRAMESET FRAMEBORDER=\"0\" FRAMESPACING=\"0\" BORDER=\"0\" ROWS=\"*\" COLS=\"100%\">
<FRAME SRC=\"http://<%=name2%>/<%=name%>/\" NAME=\"Copyright © 1999 Stefan Bruhn\" SCROLLING=\"NO\" NORESIZE>
</FRAMESET>
<NOFRAMES><META HTTP-EQUIV=Refresh CONTENT=0; URL=http://<%=name2%>/<%=name%>/></NOFRAMES>
)
Avatar billede tommyf Nybegynder
16. februar 2001 - 13:54 #3
Øv.... TDC giver ikke adgang til ASP...
Ellers er det nok et udemærket script :o(
Avatar billede jakoba Nybegynder
16. februar 2001 - 14:31 #4
du kan teste på det domænenavn der står i location.href og viderestille til den anden \"site\" på et af navnene:

<script>

if ( self.location.href.indexOf(\"2.dk\") >= 0 ) {
  // han ankom via www.2.dk eller 2.dk
  self.location.replace( \"index2.html\" );
} else
  if ( self.location.href.indexOf(\"1.dk\") >= 0 ) {
  // han ankom via www.1.dk eller 1.dk
  self.location.replace( \"index1.html\" );
} else {
  // ankom ved at indtaste IP adressen (fx: 123.45.67.89 )
  // så bare bliv ved at loade denne indexfil der hører til admin
}

mvh JakobA
Avatar billede tommyf Nybegynder
16. februar 2001 - 21:14 #5
Jakoba<--> Det virker til at være noget du har forstand på, mere end mig (siger ikke meget)... jeg har prøvet sådan her men det gider den ikke, hvad så?

<script>

if ( self.location.href.indexOf(\"123ferie.dk\") >= 0 ) {
  // han ankom via www.2.dk eller 2.dk
  self.location.replace( \"index2.htm\" );
} else
  if ( self.location.href.indexOf(\"localhost\\\") >= 0 ) {
  // han ankom via www.1.dk eller 1.dk
  self.location.replace( \"index1.html\" );
} else {
  // ankom ved at indtaste IP adressen (fx: 123.45.67.89 )
  // så bare bliv ved at loade denne indexfil der hører til admin
}
</Script>

Jeg ville gerne afprøve om det var via PWS/localhost eller www.123ferie.dk . Kan du forklare nærmere?
Avatar billede jakoba Nybegynder
16. februar 2001 - 22:51 #6
Det scriptet gør er at teste på den fuldstændige URL for siden:
fx:    \"http://www.123ferie.dk/mappe1/mappe2/fil.html\"
hvis den finder \"123ferie.dk\" i urlen vises siden index2.html

men det er nok mere sandsynligt at den kan finde \"localhost/\" når du tester lokalt på din PC :)  husk at tilte skråstregen den rigtige vej.
og så vil scriptet vise \"index1.html\" som gerne skulle ligge i samme direktorie som det su addresserede.

scriptet skal ligge i den default fil der loades af begge adresser.

Prøv igen, det burde virke:

læg evt en debug sætning:
  alert ( \"adresse: \" +self.location.href );
ind foran if sætningen så du kan se hvad der testes på.

mvh JakobA
Avatar billede tommyf Nybegynder
17. april 2001 - 15:56 #7
Det virker..... men ned til hvilken version?
Avatar billede jakoba Nybegynder
17. april 2001 - 17:57 #8
ihvertfald ned til IE4 og NS4. 98% sikkert også NS3, IE3 ved jeg ikke rigtig om havde replace funktion i location. De var lidt længe om rigtig at begynde at supportere javascript. Hvis der kommer problemer med den kan du udskifte linierne a la:
  self.location.replace( \"index2.htm\" );
med
  self.location.href = \"index2.htm\";
men prøv at undgå det for det giver et history-entry der er svært at bakke tilbage forbi med back-button.
Hvorlagt tilbage ønsker du det skal være?
tak for points.

Mvh JakobA
Avatar billede tommyf Nybegynder
17. april 2001 - 20:01 #9
Så langt som muligt ;o)

Nej, det er bare at publikum vil være folk der sidder ved computere som har en browser der måske ikke er heeelt opdateret, men IE3, og NS3 burde være nok.

Tak for hjælpen.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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