/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
hvordan kan jeg skjule den fulde URL?
Fra : Christian Haugwitz


Dato : 21-11-04 23:49

Hej NG

Mange hjemmesider har den funktion at de altid blot viser hjemmesidens
almindelige adresse. eks. http://www.hjemmeside.dk .

er der en simpel funktion i PHP så man kan sørge for dette istedet for at
man skal se på filnavnene for de forskellige undersider?

Jeg er ret ny mht. PHP, men kan dog skrive i JAVA og C.

mvh
Christian Haugwitz



 
 
Kristian Thy (21-11-2004)
Kommentar
Fra : Kristian Thy


Dato : 21-11-04 23:53

Christian Haugwitz uttered:
> Mange hjemmesider har den funktion at de altid blot viser hjemmesidens
> almindelige adresse. eks. http://www.hjemmeside.dk .

De bruger formentlig frames. Det er en rigtig dårlig ide.

--
-- [ kristian ] --------------------------------------------------------
--------------- [if( you->toppost() ) { killfilter->append( you ); }] --
--

Simon Lyngshede (22-11-2004)
Kommentar
Fra : Simon Lyngshede


Dato : 22-11-04 16:30

On Sun, 21 Nov 2004 23:48:33 +0100, Christian Haugwitz wrote:

> Hej NG
>
> Mange hjemmesider har den funktion at de altid blot viser hjemmesidens
> almindelige adresse. eks. http://www.hjemmeside.dk .
>
> er der en simpel funktion i PHP så man kan sørge for dette istedet for at
> man skal se på filnavnene for de forskellige undersider?
>
> Jeg er ret ny mht. PHP, men kan dog skrive i JAVA og C.
>

Det er ikke en funktion, det er en bug, hvis du spørg mig. Du gør det
næsten umuligt for folk at bookmarke sider, de kan ikke sende links til
andre, da de jo ikke kan se hvor de er.

Jeg synes hellere du skulle overveje om det du virkelig har lyst til at
skjule den adressen for folk. Hvorfor ville du egentligt gøre det?

Hvis du bare vil skulle fil endelser, f.eks .php, hvilket der er god
mening i, så er det igennem Apaches content negotiation (Så virker det
også på ikke php sider).
http://httpd.apache.org/docs/content-negotiation.html

--
Simon Lyngshede
simon@giraf.spiceweasel.dk
Remove long necked animal.


Jacob Atzen (22-11-2004)
Kommentar
Fra : Jacob Atzen


Dato : 22-11-04 21:29

On 2004-11-22, Simon Lyngshede <simon@giraf.spiceweasel.dk> wrote:
> Hvis du bare vil skulle fil endelser, f.eks .php, hvilket der er god
> mening i...

Er der andre argumenter for dette end "Security by obscurity"?

--
Med venlig hilsen
- Jacob Atzen

Peter Brodersen (22-11-2004)
Kommentar
Fra : Peter Brodersen


Dato : 22-11-04 22:15

On 22 Nov 2004 20:28:52 GMT, Jacob Atzen <jacob@aub.dk> wrote:

>> Hvis du bare vil skulle fil endelser, f.eks .php, hvilket der er god
>> mening i...
>Er der andre argumenter for dette end "Security by obscurity"?

Lettere URLs at remse op i telefonen og at huske.

Lettere at skifte platform og teknologi uden at skulle ændre URLs
("Cool URIs don't change").

Kommentar til misforståelsen om at URLs absolut skal mappe et
filhierarki (blot at bruge mapper som URLs og smide index.php-filer i
for simple URLs er kun et lille skridt)


Jeg er personligt træt af at forskellige sites "bliver nødt til" at
have URLs med /cgi-bin/ , /servlet/ , etc. Der har i adskillige år
været tusindevis af teknikker til pænere URLs, og der kommer flere med
tiden. Alligevel er historien fyldt med URLs, der har ændret sig uden
at ramme den rigtige ressourcer (enten transparent overfor brugeren
eller ved en simpel redirect), fordi folk har rettet URLs fra at hedde
..php3 til at hedde .php (eller .php4 eller .php5 - when will they ever
learn? :) - eller fx .htm til .asp til .aspx

Der er sjældent nogen formidlende omstændigheder, udover i de
tilfælde, hvor et site er ganske statisk og der sjældent er besøgende,
der taster sig ind på diverse URLs - eller fx URLs der rent faktisk er
ment til at mappe direkte til filer. Typisk hvis man har en
junkyard-mappe, man lige flytter sjove videoklip, screenshots, etc.
over i og smider URLs til folk. Der er sikkert et par ekstra
undtagelser, hvor de fleste dækkes ind under investering af tid i
forhold til udbytte. Omvendt set, hvis man er til det argument, så
kunne man også argumentere for at man ikke behøver at validere sin
kode (forudsat at man ikke skriver korrekt kode i første omgang :) ,
fordi det ikke ændrer det store på resultatet.

Nogle teknologier til at kompensere for dette er at redirecte gamle
URLs (dog desværre typisk ofte blot med en 302 i stedet for en 301)
eller at bruge mappers navne som URLs - mapper, man bare smider en
index.php i. Ulempen her kan bl.a. være et ekstra redirect (fra
/kontaktos til /kontaktos/ ) samt at man ender med en masse
index.php-filer med mulighed for småforvirring.

Et eksempel er http://www.microsoft.com/ie , der heldigvis stadigvæk
virker.

Den redirecter dog til http://www.microsoft.com/ie/ (sandsynligvis af
helt almindelige mappe-årsager for at sikre at relative stier virker,
som enhver webserver ville gøre).

Denne har så henvisninger og javascript-redirect til
http://www.microsoft.com/windows/ie/default.htm .

Denne foretager så en meta refresh i HTML'en til
http://www.microsoft.com/windows/ie/default.asp

Denne foretager så en meta refresh i HTML'en til
http://www.microsoft.com/windows/ie/default.mspx

Lige præcis for Microsoft-websitets tilfælde kan der være skjulte,
underliggende årsager, der gør, at URLs ikke er så lette at ændre pga.
størrelsen og belastningen, samt måske spøjs teknologi i
loadbalancere, etc. Det er dog klart positivt at
http://www.microsoft.com/ie stadigvæk virker, trods alt.
--
- Peter Brodersen

Janf (22-11-2004)
Kommentar
Fra : Janf


Dato : 22-11-04 22:57

Peter Brodersen wrote:
> Kommentar til misforståelsen om at URLs absolut skal mappe et
> filhierarki (blot at bruge mapper som URLs og smide index.php-filer i
> for simple URLs er kun et lille skridt)

Enig. URLs skal udtrykke funktion. Mapper er implementering. Selv om der
er en vis sammenhæng mellem de to, bør man befri brugerne for tekniske
spørgsmål, så som hvordan filerne er organiseret på denne eller hin server.

--
Jan Fjeldmark mailto:janf@janf.dk http://janf.dk/
Hvad du end tror du er, så er du altid meget mere.

Michael Rasmussen (23-11-2004)
Kommentar
Fra : Michael Rasmussen


Dato : 23-11-04 00:12

On Mon, 22 Nov 2004 22:56:51 +0100, Janf wrote:

> Enig. URLs skal udtrykke funktion. Mapper er implementering. Selv om der
> er en vis sammenhæng mellem de to, bør man befri brugerne for tekniske
> spørgsmål, så som hvordan filerne er organiseret på denne eller hin
> server.

Skal det forstås derhen, at et website kodet med servlets efter MVC er
det optimale?

--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917


Erik Ginnerskov (23-11-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 23-11-04 09:25

Janf wrote:

>> Kommentar til misforståelsen om at URLs absolut skal mappe et
>> filhierarki (blot at bruge mapper som URLs og smide index.php-filer i
>> for simple URLs er kun et lille skridt)
>
> Enig. URLs skal udtrykke funktion. Mapper er implementering. Selv om
> der er en vis sammenhæng mellem de to, bør man befri brugerne for
> tekniske spørgsmål, så som hvordan filerne er organiseret på denne
> eller hin server.

Her er jeg til gengæld dybt uenig. Alle de krumspring for at skjule den
faktiske adresse på en given side er da at genindføre de deeplinkproblemer,
der kendes fra frames.

Det er kun rimeligt, at brugeren kan se adressen på den side, der vises. Det
gør det også muligt at maile et link til siden videre til en bekendt - og at
bogmærke siden.

Hvad er der da at skjule? Det er da ikke fordi en lang adresse er sværere at
kopiere, for den bliver markeret i sin helhed, når man klikker i
adresselinjen. Så skal man bare trykke [Ctrl]+[C] for at kopiere og
[Ctrl]+[V] det ønskede sted for at indsætte adressen.

Jeg kan kun få øje på en 'valid' grund til at ville skjule en adresse:

Man er afskåret fra at bruge serverside-scripting og må så ty
til javascript, for at password-beskytte noget indhold.
Dette indhold vil man gerne undgå, at der bliver etableret
deeplinks til, da det reelt er muligt at gå uden om password-
kontrollen med deeplink.

Her er løsningen frames eller iframe, hvor det beskyttede indhold
er lagt i en ramme.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Simon Lyngshede (23-11-2004)
Kommentar
Fra : Simon Lyngshede


Dato : 23-11-04 13:44

Erik Ginnerskov wrote:
> Her er jeg til gengæld dybt uenig. Alle de krumspring for at skjule den
> faktiske adresse på en given side er da at genindføre de deeplinkproblemer,
> der kendes fra frames.
>
> Det er kun rimeligt, at brugeren kan se adressen på den side, der vises. Det
> gør det også muligt at maile et link til siden videre til en bekendt - og at
> bogmærke siden.
>

Her er der jo som sådan ikke tale om at skjule adressen, men sikre at
den kan forblive uændret. Ideen er at hvis du ændre /doc.html til
/doc/index.html så vil links og bookmarks ikke længere være korrekte.
Med content-negotiation kan du undgå at at inkludere f.eks .html så
brugeren kan indtaste /doc og få /doc.html. Du gemmer ikke noget for
brugerene, men du kan sikre at de links og bookmarks de ligger inde med,
forbliver korrekte, også slem om du ændre i sidens struktur eller så
nogen forslog, ændre eller indføre f.eks .jsp, .asp eller .php. Dine
brugere at rimelig ligeglade med om dine sider er .html, .php eller et
directory, bare de konsekvent når frem til den side de søger.

Det var det der var hensigten, ikke at skjule for brugerne hvor på sitet
de befinder sig.

--
Simon Lyngshede
simon@giraf.spiceweasel.dk
Remove long necked animal.


MRMunk.dk (11-12-2004)
Kommentar
Fra : MRMunk.dk


Dato : 11-12-04 01:19

Desværre er en iframe ekstremt nemt at bryde...!
det gælder OGSÅ frames.

man kan bare klikke på vis => Kilde

"Simon Lyngshede" <simon@giraf.spiceweasel.dk> skrev i en meddelelse
news:41a33098$0$84111$14726298@news.sunsite.dk...
> Erik Ginnerskov wrote:
> > Her er jeg til gengæld dybt uenig. Alle de krumspring for at skjule den
>> faktiske adresse på en given side er da at genindføre de
>> deeplinkproblemer,
>> der kendes fra frames.
>>
>> Det er kun rimeligt, at brugeren kan se adressen på den side, der vises.
>> Det
>> gør det også muligt at maile et link til siden videre til en bekendt - og
>> at
>> bogmærke siden.
>>
>
> Her er der jo som sådan ikke tale om at skjule adressen, men sikre at den
> kan forblive uændret. Ideen er at hvis du ændre /doc.html til
> /doc/index.html så vil links og bookmarks ikke længere være korrekte. Med
> content-negotiation kan du undgå at at inkludere f.eks .html så brugeren
> kan indtaste /doc og få /doc.html. Du gemmer ikke noget for brugerene, men
> du kan sikre at de links og bookmarks de ligger inde med, forbliver
> korrekte, også slem om du ændre i sidens struktur eller så nogen forslog,
> ændre eller indføre f.eks .jsp, .asp eller .php. Dine brugere at rimelig
> ligeglade med om dine sider er .html, .php eller et directory, bare de
> konsekvent når frem til den side de søger.
>
> Det var det der var hensigten, ikke at skjule for brugerne hvor på sitet
> de befinder sig.
>
> --
> Simon Lyngshede
> simon@giraf.spiceweasel.dk
> Remove long necked animal.
>



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste