Überprüfung einer Domain mit PHP

8

Ich habe einen Mitgliederbereich, wo sie ihre Domains hinzufügen können und es wird auf der Profilseite angezeigt .. aber jetzt möchte ich einen Verifizierungsprozess hinzufügen, genau wie google web-masters .. wo sie hochladen müssen eine bestimmte Datei und so .. Bitte sagen Sie mir, was ist der beste Weg, dies zu tun?

Danke:)

    
Vamsi 27.09.2010, 14:41
quelle

5 Antworten

8
  1. Erzeuge ein Token für jede Domain (sha-1 der Domain oder so), speichere es in deiner DB oder was hast du.
  2. Generieren Sie eine Textdatei mit dem Token auf Benutzeranforderung.
  3. Bitten Sie den Benutzer, Sie zu informieren, um ab und zu die URL zu überprüfen oder abzufragen. Dies kann leicht durch file_get_contents in PHP erfolgen, wenn fopen_wrappers aktiviert sind.
  4. Das Token wird offensichtlich mit dem Token in Ihrer Datenbank verglichen, um sicherzustellen, dass es nicht nur eine zufällige Datei in einer zufälligen Domäne ist.
  5. Es kann eine gute Idee sein, in einem bestimmten Zeitintervall zu überprüfen, ob die Datei noch da ist, damit jemand die Domain nicht verkauft, aber die Kontrolle behält.

Es ist nicht wirklich schwarze Kunst, da wir davon ausgehen können, dass der Benutzer Zugang zu seiner Domain hat, sobald eine bestimmte Anfrage, die den Zugang beweist, vom Benutzer erfüllt werden kann. Es gibt keine echte Möglichkeit, das System zu täuschen, außer etwas DNS-Magie zu tun oder Zugang zu dem Webserver zu erhalten, der auf der Domäne läuft, die sowieso außerhalb Ihrer Kontrolle liegt.

    
Alexander Sagen 27.09.2010, 14:46
quelle
3

Ich bin mir nicht sicher, ob das der beste Weg ist, aber ich denke Google macht so etwas:

  1. Erhalte den Domain-Namen des Nutzers (z. B. "http://example.com")
  2. generiert eindeutigen Code und speichert in db
  3. Sagen Sie dem Benutzer, wo er den Code hochladen soll (z. B. so etwas wie "/verification.txt")
  4. Nach der Bestätigung eine HTTP-Anfrage für den Code ("http://example.com/verification.txt") vom eigenen Server an den Server des Benutzers
  5. senden
  6. Vergleichen Sie den Code, den Sie erhalten haben, mit dem Code in der db

Sie möchten möglicherweise den gleichen Code für dieselbe Domain generieren.

    
Piskvor 27.09.2010 14:47
quelle
1

Diese Frage ist verwickelt. Ich denke, du musst etwas genauer ausdrücken, wonach du suchst.

EDIT # 1:

Erzeuge einen md5 und gib ihn dem Benutzer, sag ihm, er soll ihn auf seine Domain setzen und eine URL angeben, wo er ist. Dies könnte in einer TXT-Datei oder irgendetwas sein.

Lesen Sie dann diese Datei und prüfen Sie, ob die MD5-Zeichenfolge dort existiert.

Eigentlich würde ich mir etwas anderes ausdenken als ein MD5. Vielleicht drei von ihnen, so dass Sie die Chance verringern, dass sie es auf einer anderen Domain finden und dann geben Sie diese URL.

Dies kann immer noch manipuliert werden, es sei denn, Sie definieren Einschränkungen, wie es eine Textdatei sein muss, die Datei darf nur die MD5 enthalten ... etc.

Im Moment kann ich eine MD5 eintippen, aber das bedeutet nicht, dass ich diese Webseite kontrolliere:

md5 ("ich habe dich getäuscht")="0afb2d659b709f8ad499f4b87d9162f0"

Aber wenn ich die URL zu dieser Antwort übergab, könnte Ihr System versehentlich denken, dass ich hier Admin habe.

Ich empfehle, eine Datei zu erstellen und sie dazu zu bringen, die Datei hochzuladen und Ihnen die URL zu geben. Aber auch das wird nicht unbedingt funktionieren, denn es gibt viele Seiten, wo man einfach etwas hochladen kann.

Vielleicht, wenn es eine PHP-kodierte Datei ist, die ausgeführt werden kann? Das ist eine Sicherheitslücke, weil ich nicht weiß, ob ich irgendeine PHP-Datei hochladen würde. Normalerweise, wenn Sie keinen Administrator haben, wird niemand Ihnen erlauben, eine PHP-Datei hochzuladen, die funktionieren würde.

Vielleicht möchtest du ein PHP Call-Home-Skript erstellen, aber das wird schlecht. Die Leute würden es nicht benutzen.

    
Geekster 27.09.2010 14:47
quelle
1

Eine andere Möglichkeit könnte es sein:

  1. Holen Sie sich den Domainnamen
  2. Generieren Sie einen zufälligen Code / String.
  3. Sorry dies in Ihrer Datenbank
  4. Erstellen Sie ein Meta-Tag und den Zufallscode im Inhalt.
  5. Verwenden Sie die Datei get Inhalte der Indexseite der Website.
  6. Suchen Sie dann auf der Seite nach dem Meta-Tag mit dem in der Datenbank sortierten Code.
  7. If-Anweisung für den Erfolg oder nicht erfolgreich.

Das Meta-Tag sollte folgendermaßen aussehen:

%Vor%     
ryryan 27.09.2010 16:14
quelle
0

Eigentlich nur eine md5-Zeichenfolge für den Domainnamen erstellen, die der Websitebesitzer in ein Meta-Tag setzen soll, damit Sie überprüfen können, ob das schon funktioniert ...

    
Zilverdistel 27.09.2010 14:45
quelle

Tags und Links