Avatar billede carstengp Nybegynder
22. februar 2003 - 18:37 Der er 20 kommentarer og
1 løsning

Hvordan forhindrer man at nogen linker til HTML-filer...?

Hvis jeg på min hjemmeside har nogle HTML-dokumenter liggende, og ikke ønsker at andre kan linke direkte til disse fra en anden hjemmeside.

Hvordan kan det gøres? - Et script eller lign. som forhindrer det?

Jeg mener at have hørt noget om, at man kan indsætte noget i HTML-dokumenterne, så det kontrolleres, at man kommer fra forsiden. Og hvis man ikke gør, så bliver man redirected til forsiden.

Hvis nogen ved det, så er jeg en glad mand *S*

På forhånd tak, Carsten

P.S.: 100 point, fordi det er vigtigt for mig ;-)
Avatar billede arne_v Ekspert
22. februar 2003 - 18:45 #1
Du kan ikke forhindre nogen i at linke til dine sider.

Du kan:
  - protecte dine sider så de skal gennem en login sekvens
    for at få lov til at se siden
  - lave lidt script fusk som checker på hvor de kom fra

Bemærk at dem i den anden ende så kan lave lidt script fusk der sætter
en falsk kommee fra information.
Avatar billede carstengp Nybegynder
22. februar 2003 - 19:12 #2
Prøv at klikke på dette link, så kan du se, hvad jeg mener.
http://www.silverbird.dk/flash/snot/samples.shtml
Avatar billede arne_v Ekspert
22. februar 2003 - 19:25 #3
Øh. Hvad skal jeg se på den side ?
Avatar billede carstengp Nybegynder
22. februar 2003 - 20:00 #4
se adressen og hvor du kommer hen
Avatar billede carstengp Nybegynder
22. februar 2003 - 20:00 #5
du ser ikke html'en men kommer til forsiden
Avatar billede arne_v Ekspert
22. februar 2003 - 20:04 #6
Jeg ser HTML'en.
Avatar billede arne_v Ekspert
22. februar 2003 - 20:05 #7
Hint: det stykke JavaScript virker fint i MSIE men ikke i NS !
Avatar billede arne_v Ekspert
22. februar 2003 - 20:06 #8
Og det er netop pointen - den slags fuske scripts er ikke ret
meget værd i praksis.
Avatar billede bufferzone Praktikant
22. februar 2003 - 20:28 #9
Du kan beskytte dine html sider med NFTS rettigheder, hvis det kun er bestemte brugere der må se dem, det kræver så at disse brugere er oprettet i dit domæne.

Du kan også gøre det med asp og javascript ved dels at måle på hvorfra disse sider requestes og på om den session der køre har været forbi en logon side og opgiver det korrekte brugernavn og password
Avatar billede carstengp Nybegynder
22. februar 2003 - 21:08 #10
jeg mangler noget konkret, jeg kan bruge... jeg ved godt, at det kan lade sig gøre, men how?

I kan se i linket: http://www.silverbird.dk/flash/snot/samples.shtml hvad det er jeg ønsker. Hvis nogen kan komme med et script, asp eller whatever, så er der point, ellers ikke.

Arne--->>> 98% af alle mennesker bruger MSIE, så det er fint nok med mig, at det kun fungerer der. Du kan jo se om du kan komme ind på min gamle hjemmeside: http://www.sitecenter.dk/carstengp det tvivler jeg på at du kan.
Avatar billede arne_v Ekspert
22. februar 2003 - 21:13 #11
Nej NS redirecter også for den.

Men det tager kun 5 sekunder at komem ind og se siden alligevel
(disable JavaScript).
Avatar billede arne_v Ekspert
22. februar 2003 - 21:13 #12
Hvis du er tilfreds med det stykke kode, hvorfor hapser du det så
ikke bare og bruger det ?
Avatar billede arne_v Ekspert
22. februar 2003 - 21:20 #13
Det er ikke ret mange linier:

<SCRIPT language=javascript TYPE="text/javascript">
<!--
var theD = ""
theD = parent.frames.length
if (theD==0) {location.href='http://www.silverbird.dk'}
-->
</SCRIPT>
Avatar billede carstengp Nybegynder
22. februar 2003 - 21:21 #14
det har jeg også lige gjort, men jeg mangler lidt....

koden er såmænd god nok:

<SCRIPT language=javascript TYPE="text/javascript">
<!--
var theD = ""
theD = parent.frames.length
if (theD==0) {location.href='http://www.xxxxxxxx.dk'}
-->
</SCRIPT>

Hvis man tilføjer ovenstående i den HTML, som man ikke vil have at andre linker til, så føres de besøgende til http://www.xxxxxxxx.dk hvis de ikke allerede kommer derfra.
Men de HTML'er som jeg har liggende, de ligger ikke i root-biblioteket på serveren. de ligger et par niveauer nede.

Mit spørgsmål lyder nu. hvis jeg nu vil have at de som klikker på et link fra en anden side end det root-bibliotek mine HTML'er ligger i, så skal de til hovedsiden og ikke til root-biblioteket. Hvad mangler der i koden for at det sker?
Avatar billede arne_v Ekspert
22. februar 2003 - 21:23 #15
Du skal vel bare:

<SCRIPT language=javascript TYPE="text/javascript">
<!--
var theD = ""
theD = parent.frames.length
if (theD==0) {location.href='http://www.xxxxxxxx.dk/dir1/dir2/page.html'}
-->
</SCRIPT>
Avatar billede carstengp Nybegynder
22. februar 2003 - 21:26 #16
jamen hvis den der klikke på linket så ikke kommer fra http://www.xxxxxxxx.dk/dir1/dir2/page.html så bliver han vel sendt til http://www.xxxxxxxx.dk/dir1/dir2/ eller hvad? han skulle gerne til http://www.xxxxxxxx.dk/
Avatar billede carstengp Nybegynder
22. februar 2003 - 21:26 #17
prøver lige
Avatar billede carstengp Nybegynder
22. februar 2003 - 21:30 #18
Ja, jeg havde ret. man bliver sendt til det sub-dir, som der står i url'en og man skal til forsiden, så det duer ikke
Avatar billede carstengp Nybegynder
22. februar 2003 - 21:33 #19
man må vel kunne lave noget i retning af:
(hvis destinationen ikke er...) {location.href='http://www.xxxxxxxx.dk/dir1/dir2/page.html'}
(så videresend til...) {location.href='http://www.xxxxxxxx.dk'}

Men hvordan gør man... jeg har intet forstand på scriptkoder... :-(
Avatar billede jakoba Nybegynder
22. februar 2003 - 23:03 #20
for at gøre det sikkert bør du bruge noget serverside. php eller asp.
check på referrer om siden bliver kaldt fra et link på en af dine egne sider. hvis ikke viser du en anden side:
i php:

if ( ! strpos( $HTTP_REFERER, "p://www.ditdomaene.dk/dir1/" } ) {
    header( "location: " .$nixen_bixen_side );
    exit();
}

mvh JakobA
Avatar billede carstengp Nybegynder
23. februar 2003 - 00:49 #21
Jeg har fundet noget, som virker godt nok nu:

Prøv at se, hvad der sker, hvis jeg linker til denne html på min HP:

http://www.grineflip.dk/flash/flash1/001.htm

---------------------------------------------

Koden, hvis der er andre, der får brug for det:

<SCRIPT LANGUAGE="JavaScript">

<!-- Begin
var requiredfrom = "http://www.grineflip.dk/flash/flash1"; //  required prev. page
if (document.referrer.indexOf(requiredfrom) == -1) {
window.location="http://www.grineflip.dk";
}
//  End -->
</script>

--------------------------------------------

Til gengæld, vil jeg godt give point, hvis det kan lade sig gøre, at man ikke skal skrive: var requiredfrom = "http://www.grineflip.dk/flash/flash1";
men kan lave det så startadressen blot er noget med http://www.grineflip.dk
Altså noget i stil med var requiredfrom = "http://www.grineflip.dk/*.*";

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
Kurser inden for grundlæggende programmering

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