benji: Subdomains & @-Domains -- aber wie ?

Hallo liebes Forum !

Mal wieder da, der Benji: Wie versprochen, am Mittwoch ist er wieder da :)
Nein, aber mal zum "ernst des Threads"...:

Ich habe hier schon öfters was von @-Domains und so nem Zeugs gehört, und zwar nur, dass es kein korrektes HTTP ist, mit JavaScript generiert wird, und der erste Thread, den ich hier damit-in-verbindung schon gesehen habe, war was wegen www.blabla@obi.de oder sowas.

Wenn es wirklich mit JavaScript geht, dann bitte: wie ? eine Google-Suche hat mir nichts gebracht, und die Suche hier aufm Server geht seit geraumer Zeit nicht mehr - immer meldet er mir, der Server wäre überlastet - ._IMMER_.

Naja, ich habe mich hier auch schon öfters zu entsprechendem geäußert, u.a. auch Subdomains unter IIS&Win2k*profesional*, ich habe jetzt schon 1000x in entsprechenden Hilfen (warum benutze ich das wort "entsprechenden" so oft..:?) gelesen, dass es _nicht_ geht - und viele Leute hier behaupten, dass es geht, aber ich hab's bis jetzt noch nicht hinbekommen, und ich bekomms auch nirgendwo hin [falls sich das Therad hier in richtung subdomain bewegen sollte, werde ich euch wahrscheinlich mal einen Ausschnitt aus der IIS-Hilfe anbieten, ansonsten für alle, die IIS nutzen, lest euch mal das hier durch: http://localhost/iishelp/iis/htm/core/iinmres.htm]

cu,                        /* ... so was benutze ich zwar net, aber... */

benji

--
© by benji
® by benji
  all rights reserved
  1. Hey !
    Ich würde mir das

    durch: http://localhost/iishelp/iis/htm/core/iinmres.htm]

    ja gerne durchlesen, aber auf _MEINEM_ localhost ist die Datei leider nicht ;-)

    Greetz
    David

    1. Hallo David !

      durch: http://localhost/iishelp/iis/htm/core/iinmres.htm]
      ja gerne durchlesen, aber auf _MEINEM_ localhost ist die Datei leider nicht ;-)

      Ich habe auch daraufhingewiesen, dass es nur unter IIS existiert, und wenn man den nicht groß umstellt, ist das Verzeichnis "/iishelp" standartmäßig für die IIS-Hilfe eingerichtet. Naja, ansonsten, hier die Seite:

      _------------------START-------------------------_

      Informationen zur Namensauflösung
      Damit Benutzer Ihre Site in einem Intranet erreichen können, müssen Sie über eine eindeutige IP-Adresse verfügen, die den Computer im Netzwerk kennzeichnet. Diese Adresse besteht aus einer langen Folge von Zahlen, die durch Punkte voneinander getrennt sind (z. B. 172.16.255.255). Da sich die Benutzer eine numerische Adresse nur schwer merken können, werden Textnamen, auch angezeigte Namen genannt, verwendet, um den Besuchern eine leicht zu merkende Adresse zur Verfügung zu stellen, z. B. www.microsoft.com. Die Namensauflösung umfasst die Auflösung des angezeigten Namens, der in den Clientbrowser eingegeben wurde, in die korrekte numerische Adresse. In diesem Abschnitt werden unterschiedliche Namensauflösungssysteme beschrieben.

      Weitere Informationen finden Sie in der Windows-Dokumentation, auf die Sie über die Option Hilfe im Startmenü zugreifen können.

      Systeme zur Namensauflösung in Intranets
      Ein Intranet ist ein privates LAN (Local Area Network), in dem die Internettechnologie eingesetzt wird. Um Datenpakete erfolgreich empfangen und übermitteln zu können, muss die IP-Adresse jedes Computers dem Textnamen des Computers korrekt zugeordnet sein. Für die Zuweisung der Namen und Adressen stehen mehrere unterschiedliche Systeme zur Verfügung, die Namen zu Adressen auflösen. Die Entscheidung für ein System sollte von der Größe des Intranets, der Häufigkeit, mit der Computer in dem Netzwerk hinzugefügt oder verlagert werden, und der Software, die unter Microsoft® Windows 2000® Server installiert ist, abhängig gemacht werden. In den folgenden Abschnitten werden die Verfahren beschrieben, durch die Computer in einem Intranet ihre Namen und Adressen erhalten.

      Zuweisung von IP-Adressen
      Für die Zuweisung von IP-Adressen stehen zwei Methoden zur Verfügung: die statische oder die dynamische Zuweisung. Sie können in einem Netzwerk nur eine dieser Methoden oder eine Kombination aus beiden Methoden einsetzen.

      Statisch   Die IP-Adressen für alle Computer in dem Intranet werden von dem Systemadministrator zugewiesen und verwaltet. Die statische Zuweisung eignet sich am besten für kleine Netzwerke, die nur in unregelmäßigen Abständen verändert werden.
      Dynamisch   Ein DHCP (Dynamic Host Configuration Protocol)-Server vergibt eine zeitlich befristete Lease für eine IP-Adresse an einen Client, wenn sich der Client an das Netzwerk anmeldet. Sobald sich der Client anmeldet, weist der DHCP-Server eine IP-Adresse aus dem Pool der derzeit verfügbaren Adressen zu. Gegen Ende der Leasedauer handelt der Clientcomputer, falls erforderlich, mit dem Server eine Erneuerung der Lease aus. Wenn sich der Client abmeldet, wird die Adresse wieder freigegeben und kann einem anderen Client zugewiesen werden. Ein DHCP-Server befreit den Systemadministrator von der Verwaltung der IP-Adressenzuweisung und eignet sich insbesondere für große Netzwerke oder Netzwerke, in denen häufig Änderungen vorgenommen werden. Bei der Verwendung eines DHCP-Servers kann einem Computer im Netzwerk immer nur eine IP-Adresse zugewiesen werden.
      Anmerkung   Wenn Sie einer Netzwerkkarte mehrere IP-Adressen zuweisen möchten, müssen Sie für diesen Computer eine statische Adressenzuweisung verwenden.

      Systeme zur Namensauflösung
      Windows-Netzwerkkomponenten stützen sich auf die NetBIOS-Benennungskonvention. Im Gegensatz dazu stützen sich TCP/IP-Komponenten auf eine Benennungskonvention, die als DNS (Domain Name System) bezeichnet wird. Unter Windows ist der DNS-Hostname standardmäßig mit dem NetBIOS-Computernamen identisch. Für die Zuordnung von Computernamen zu IP-Adressen stehen zwei Methoden zur Verfügung:

      Statisch   Der Systemadministrator erstellt eine Textdatei, eine so genannte HOSTS-Datei (für DNS-Namen) oder LMHOSTS-Datei (für NetBIOS-Namen), und gibt den Namen und die IP-Adresse jedes Computers ein. Anschließend wird die Datei im Netzwerk verteilt. Wenn eine Anforderung für eine Verbindung zu einem anderen Computer erfolgt, wird die Datei verwendet, um den Namen zu der korrekten IP-Adresse auszuwerten. Innerhalb von einfachen Netzwerken, in denen nur unregelmäßig Änderungen vorgenommen werden, kann dieses Verfahren problemlos eingesetzt werden.
      Dynamisch   Wenn sich ein Clientcomputer am Netzwerk anmeldet, weist ein DHCP-Server eine Adresse zu und sendet die IP-Adressenzuweisung an einen WINS (Windows Internet Name Service)-Server. Der WINS-Server registriert den Namen des Computers. Sobald eine Anforderung für den NetBIOS-Computernamen erfolgt, wertet der WINS-Server den Namen zu der richtigen IP-Adresse aus. Durch diese automatische Erkennung und Zuordnung von Computernamen und -adressen wird der Verwaltungsaufwand in großen oder sich häufig ändernden Netzwerken reduziert.
      DNS-Namen werden in der Regel mithilfe statischer Informationen ausgewertet. Der DNS-Server enthält einen Abschnitt der statischen Datenbank, in der Hostnamen und Adressen aufgelistet werden. Wenn der angeforderte Name nicht in dem Datenbankabschnitt des DNS-Servers enthalten ist, sendet der Server eine Abfrage an andere DNS-Server, um die angeforderten Informationen zu erhalten. Der DNS-Server, der unter Windows ausgeführt wird, kann so konfiguriert werden, dass er für die Namensauflösung der niedrigeren Ebenen der hierarchischen DNS-Namensstruktur eine Abfrage an einen WINS-Server sendet. Da der WINS-Dienst die Computernamen dynamisch zuweist, wird auf diese Weise ein statisches DNS-System im Prinzip zu einem dynamischen System.

      Wenn Sie mehrere Websites oder FTP-Sites mit jeweils einer eigenen IP-Adresse auf einem einzelnen Server einrichten, können bei der automatischen DNS-Registrierung Probleme auftreten. Deaktivieren Sie die automatische DNS-Registrierung von Windows 2000 Server, und konfigurieren Sie die DNS-Registrierung für die Sites manuell, um eine korrekte IP-Bindung und DNS-Registrierung sicherzustellen. Weitere Informationen zur Deaktivierung der automatischen DNS-Registrierung und zur manuellen Konfiguration der DNS-Registrierung finden Sie in der Dokumentation zu Windows 2000 Server.

      _----------------ENDE-----------_

      (c) by MICROSOFT SYSTEMS - ehm, nein, sondern Microsoft Cooperation (womit kooperiert
          den MS ... ? ;-)

      benji

      --
      © by benji
      ® by benji
        all rights reserved
  2. hi,

    Ich habe hier schon öfters was von @-Domains und so nem Zeugs gehört, und zwar nur, dass es kein korrektes HTTP ist,

    stimmt. es ist ein anwednungsfall der übergabe von login-daten in der form username:passwort@www.example.com - nur _erlaubt_ nach definition eines URLs ist es nicht.

    mit JavaScript generiert wird [...]
    Wenn es wirklich mit JavaScript geht, dann bitte: wie ?

    wie kommst du darauf, dass das irgendwas mit javascript zu tun hätte?

    irgend jemand gibt z.b.
    http://benji@example.com/ in der adresszeile seines browsers ein, und vorausgesetzt, dass es trotz "falschheit" funktioniert, so dass ein request an example.com geschickt wird, so kann dort ein script o.ä. den usernamen 'benji' abfragen, und dich in abhängigkeit davon irgendwohin weiterleiten.

    mehr steckt da nicht hinter, und javascript ist komplett aussen vor.

    gruss,
    wahsaga

    1. Danke Wahsaga, für deine schnelle Antwort, dass JavaScript da im Spiel ist, kann und konnte ich mir auch schlecht vorstellen. Wie bekommmt man denn dann mit CGI-Anwendungen (PHP<>me) den anmelder raus ?

      und, dieses Zeugs kommt doch eigentlich von FTP, wo man sich so anmelden kann, oder?

      benji

      --
      © by benji
      ® by benji
        all rights reserved
      1. hi,

        Wie bekommmt man denn dann mit CGI-Anwendungen (PHP<>me) den anmelder raus ?

        den sollte dir der server zur verfügung stellen.
        bei verwendung von php z.b. hast du den benutzernamen idR. in $_SERVER["REMOTE_USER"] zur verfügung.

        und, dieses Zeugs kommt doch eigentlich von FTP, wo man sich so anmelden kann, oder?

        AFAIK ja. im kontext von HTTP ist es jedenfalls nicht gültig - ob es dann "funktioniert", ist also ein glücksspiel.
        gruss,
        wahsaga

        1. Ah ja, OK, danke !

          benji

          --
          © by benji
          ® by benji
            all rights reserved
        2. Hi,

          bei verwendung von php z.b. hast du den benutzernamen idR. in $_SERVER["REMOTE_USER"] zur verfügung.

          vorausgesetzt, der Server hat zunächst bei dem Request des Client _ohne_ Authentication-Daten einen 401 mit der Realm zurückgeschickt, die der Client braucht um zu wissen, welchem Bereich er die Daten zuordnen kann. Vorher schickt er nämlich _hoffentlich_ keine Authentication-Header über's Netz.

          Cheatah

          --
          X-Will-Answer-Email: No
          X-Please-Search-Archive-First: Absolutely Yes
  3. Auf die Gefahr hin heute noch mehr Leute mit irgendwelchen unschönen Lösungen zu verschrecken: DOCH, es gibt auch eine JavaScript-Lösung zu dem ganzen:

    <!-- @-Domain Script v1.0.281101 (c) 2001 by Enno Kolb (enno@ekolb.de) - www.ekweb.de -->
    <head>
        <script language="JavaScript" type="text/javascript">
        <!--
        var aryAtDomains = new Array();/*
        Setup :1) Speichern Sie Ihre bisherige Startseite (index.html, index.htm oder default.htm, ...)
                    unter einem anderen Namen ab.
               2) Kopieren Sie die @-Domain Datei als Startseite in Ihr Basisverzeichnis.
                    Benennen Sie sie evetuell um, je nachdem wie die Startseite fuer Ihr Web
                    heissen muss. Also z.B. als index.html.
               3) Geben Sie hier die Seite an, die angezeigt werden soll, wenn der Besucher
                    eine @-Domain aufruft, die Sie nicht konfiguriert haben :*/
        var strSorryUrl = ""; /*
               4) Legen Sie nun die Seite fest, die angezeigt werden soll, wenn der Besucher
                    keine @-Domain angegeben hat (also z.B. bei Aufruf von http//www.ihredomain.de).
                    Geben Sie hier Ihre in 1) umbenannte vorherige Starteite an :*/
        var strDefaultUrl = "";/*
               5) Konfigurieren Sie folgend Ihre @-Domains :
                    Syntax Beispiel:   aryAtDomains["Name der @-Domain"] = "Zielurl";
                    Als Zielurl sind Dateien, Verzeichnisse oder komplette Urls moeglich.
                    Zu Dateien und Verzeichnissen wird relativ zum Speicherort des @-Domain Scripts gewechselt!
                    Wichtig!:
                    Schreiben Sie alle @-Domain Namen in Kleinbuchstaben und verzichten Sie auf Sonderzeichen.*/

    /*
                6) Aendern Sie die Url im meta-refresh und die Url des a-Tag im Body-Bereich dieser Seite.
                        Sie finden diese am Ende dieser Seite unter dem Script Bereich.
                7) Fertig, viel Spass mit Ihren neuen @-Domains!

    :o)- Please don't change the following javascript code ------------------------------------*/
        var strTargetUrl, strUrl = window.location.href, intAtPos = strUrl.indexOf("@");
        if (intAtPos != -1) {
            if((strUrl.substring(0, 11)).toLowerCase() == "http://www.") {
                strAtDomain = strUrl.substring(11, intAtPos);
            }else if((strUrl.substring(0, 7)).toLowerCase() == "http://") {
                strAtDomain = strUrl.substring(7, intAtPos);
                }
                if (aryAtDomains[strAtDomain.toLowerCase()])
                    strTargetUrl = aryAtDomains[strAtDomain.toLowerCase()]
                else
                    strTargetUrl = strSorryUrl + "?refurl=" + strAtDomain;
        } else
            { strTargetUrl = strDefaultUrl; }
        window.location.href = strTargetUrl;
        //--------------------------------------------------------------------------------------->
    </script>
    <!-- Meta-Refresh hier aendern : -->
    <meta http-equiv="refresh" content="0; URL=">
    </head>
    <body bgcolor="#FFFFFF" text="#808080" link="#808080" vlink="#808080" alink="#808080">
    <!-- a-Tag Url hier aendern : -->
    <a href="">
        <font size="1" face="Verdana, Arial, Helvetica">Wenn die Seite nicht in wenigen Sekunden automatisch geladen wird, bitte hier klicken!</font>
    </a>
    </body>
    </html>

    MfG
    Rouven

    --

    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
  4. Hi,

    cu,               /* ... so was benutze ich zwar net, aber... */

    :)

    Optional geht schließlich alles. ;-)

    Ich verwende eine JavaScript-Lösung. Surfer ohne JavaScript müssen dann manuell auf den Link "@Domains" auf der Homepage klicken.

    Homepage: http://www.vampirehost.de  Beispiel: http://Coding@Vampirehost.de

    Die Erkennung des "Users" erfolgt im externen JS der Homepage (mittels http://www.vampirehost.de/gruft/coding/jscript/sysvars.htm), die Auswertung/Weiterleitung zur @Domain ebenfalls. Nur die Zuweisung "User" zu einer spezifischen Adresse ist als internes Script in der Homepage selbst untergebracht (resolveAtDomain), damit mein Kumpel mit dem ich die Website betreibe, für Änderungen nicht in meinen Scripts rumfuhrwerken muß. ;-)

    Gruß, Cybaer