404 Fehler bei normal abrufbaren Seiten

  • Moin Leute,


    Mich verschlägt es nicht oft hier in das Forum, aber ich stehe im Moment vor einem Problem wo ich absolut Ratlos bin wie ich es lösen soll und das Forum hier ist mir als letzter Ausweg eingefallen.
    Ich hoffe ihr wollt und könnt mir helfen! ;(


    Ach und sorry wegen dem Unpräzisen Titel, wusste nicht so ganz wie ich mein Problem nennen sollte.


    Ich habe nun folgendes Problem, das sich nicht weiter schlimm anhört, aber dennoch nervig ist:
    Ich wollte nun meine Website ein wenig modern gestalten und Social Media wie Facebook einbinden. Dazu gehört selbstverständlich auch ein "Sahre Button". Eingebunden, alles wunderbar, doch sobald man diesen Button klickst wird in Facebook anstatt einer Preview meiner Website bloß eine überaus hässliche 404 Page not Found fehlermeldung angezeigt.
    Zunächst klingt das etwas verstörend, da der Button so eingestellt ist den aktuellen URL der Adresszeile zu "Teilen".


    Habe also weiter geforscht und bin dahinter gekommen, das Facebook oftmals mit .htaccess rewrite Rules probleme hat, eine Lösung wäre die Flags [QSA,NC,L] zu setzen.
    Mit dem htaccess Krempel kenn ich mich nur mittelmäßig aus, die rewirte rules hab ich alle selbst formuliert, was diese Flags nun im Detail anstellen - eigentlich ists auch egal, denn ich bin schonwieder einen Schritt weiter!
    Falgs gesetzt bla bla, der Facebook Debugger zeigt noch immer bei allen URLs die ich ihm einschmeiße 404 an.
    AUßER wenn ich die domain ohne pfadangaben übermittle (In meinem Fall Home − Löber Zweirad GmbH). Nun bekomme ich die Meldung 206 und immernoch nicht die eignetliche Seite gezeigt.
    Der Debugger spuckt mir aber wenigstens das aus, was er empfängt und as ist folgendes:


    PHP
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
    <html>
    <head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head>
    <body>
    <h1>It works!</h1>
    <p>This is the default web page for this server.</p>
    <p>The web server software is running but no content has been added, yet.</p>
    </body>
    </html>


    Das sieht mir sehr nach der Standartseite des Servers oder des Domain Roots aus... Meine Frage nun: Warum????
    Meine Seite ist ganz normal zu erreichen aus dem Web und bei allen http response code checks lande ich auch eigentlich immer bei einem 200 OK.
    Außer Facebook gibt es jedoch auch einiges SEO helper tools die meine Seite seltsamerweise nicht korrekt öffnen können.


    Zu meinen Daten:
    Die Website läuft auf einem Neptun vServer, der alte ohne KVM.
    Domain ist die loeber-zweirad.de
    Auf dem Server läuft Froxlor als Control Pannel


    Meine unordneliche .htacccess datei sieht wie folgt aus:



    Aus lauter verzweiflung mit vielen überflüssigen Flags und Zeug...


    Mir macht es aber eher den Anschein als wäre die Domain irgendwie falsch konfiguriert, ich bin jedoch absolut ratlos was ich tun kann! ?(
    Ich bin dankbar für jede Hilfe!! :S

    MfG Nico :)

    Einmal editiert, zuletzt von Niconator () aus folgendem Grund: Eiin paar Tippfehler beseigt ;)

  • Hi Niconator,


    mir ist aufgefallen, dass ich weder mit dem Firefox, wget oder curl deine SSL-Gesicherte Seite aufrufen kann!


    Da Facebook ja möglichst auf seine https-Seite weiterleitet, kann es Sein, dass dein Problem hiermit zu tun hat
    und sich die Server von Facebook Aufgrund einer fehlgeschlagenen Verbindung ungewollt verhalten!
    Vielleicht findest du dazu was in den Logfiles?



    Ich hoffe, ich konnte dir weiterhelfen!


    Andreas

  • Bei mir leitet nichts auf https weiter. Erwzinge ich aber https selbst, so passiert quasi nichts, siehe:

    "Security is like an onion - the more you dig in the more you want to cry"

  • Die Erklärung dafür ist einfach:
    Das SSL Zertifikat ist nicht fertig eingerichtet.


    Ich hab damit zuletzt mal experimentiert und versucht ein SSL Zertifikat selbst zu signieren. Leider mit gefährlichem Halbwissen. Daher habe ich https nicht zum laufen gebracht.
    Es wäre ein nettes features der Website gewesen ist derzeit jedoch noch nicht zwingend notwendig, da keine sensiblen Daten ausgetauscht werden. Habe es daher links liegen gelassen...


    Ich glaube aber nicht, dass Facebook tatsächlich auf https also 8080 geht, schließlich gibt man in den debugger ja die URL mit Http:// ein, zumal ja, wenn man ausschlißlich die domain eingibt, ja auch eine Response kommt, der Quellcode der Response (der HTML Kram) steht ja in meinem Post.


    Facebook Debugger:
    Home − Löber Zweirad GmbH --> 206
    Team − Löber Zweirad GmbH − Qualität zu einem fairen Preis! --> 404
    https://developers.facebook.co…Fwww.loeber-zweirad.de%2F


    Erhaltene Response:
    https://developers.facebook.co…Fwww.loeber-zweirad.de%2F == Startseite http://46.38.241.227/


    => Faceook ignoriert den Pfad der Domain total und landet im Web root der IP?!


    PS: Wie gesagt passiert das nicht bloß bei Facebook, verinzelt haben auch diese helper Seiten dieses Problem, die SEO tipps geben...

  • Das klingt nun schonmal interssant!
    In der tat habe ich AAAA records erstellt, immerhin IPv6 ist zukunft bla bla...
    Was ist denn nun genau das Problem?


    Bzw. ist der entfernen der AAAA records der einzige Weg das Problem zu beseitigen, oder ist eine andere kompente falsch konfiguriert, was zu diesem Fehler führt?


    Und ohne dein Lösungsansatz anzuzweifeln, was führt dazu, dass du die AAAA einträge für schuldig hällst? In der Tat scheint es ja solch etwas in der richtung zu sein, doch wie ist der Fehler rekonstruirbar?


  • Was ist denn nun genau das Problem?


    Dass deine Website über IPv6 nicht erreichbar ist, sondern nur den Default-vhost zeigt.


    Bzw. ist der entfernen der AAAA records der einzige Weg das Problem zu beseitigen, oder ist eine andere kompente falsch konfiguriert, was zu diesem Fehler führt?


    Sinnvoller wäre es natürlich den Apache richtig zu konfigurieren. ;) Leider halten sich meine Kenntnisse von Froxlor in Grenzen.


    Und ohne dein Lösungsansatz anzuzweifeln, was führt dazu, dass du die AAAA einträge für schuldig hällst?


    Ich habe einfach deine Seite per IPv6 aufgerufen... Falls du keine IPv6 hast, kannst du einen Proxy verwenden, z.B.: http://www.ipv6proxy.net/go.php?u=http%3A%2F%2Fwww.loeber-zweirad.de%2F&b=0&f=norefer

  • Damit hast du alle Fragen wunderbar beantwortet bis auf die eine eben! Wie konfiguriere ich den Apache nun korrekt? :D


    Vielen Dank schonmal dafür die Ursache zu finden!!!


    Leider halten sich meine Kentnisse was die Serverkonfiguration angeht auch in grezen. In Froxlor sehe ich keinerlei Einstellmöglichkeiten die auf einen unterschied zwischen IPv4 und IPv6 bei der nutzung der Domain hinweisen...


    ---
    Edit:


    Ich hab diesen Thread gefunden: Froxlor und IPv6


    Ich schätze mal ich muss für Home − Löber Zweirad GmbH 2 IPs Dual stack setzen, also eine IPv6 und eine IPv4 nun scheint das ja etwas komplizierter zu sein.
    Ich bastel gern und viel mit PHP, was so konfigurationen angeht bin ich jedoch ein ziemlicher anfänger, ich wäre wirklich froh um eine Schrittweise anleitung wie ich das passabel zum laufen bringen, am besten direkt mit Pfad Angaben wo ich die erwähnten Konfig Datein auf Debian finde. :S

    MfG Nico :)

    Einmal editiert, zuletzt von Niconator () aus folgendem Grund: Neue Infos...

  • Froxlor und IPv6 könnte eine Lösung sein.


    Angeblich kann das aber die aktuelle Froxlor-Version. Denke da wird dir aber sicher hier noch jemand antworten, der Froxlor auch in der Praxis einsetzt.

    "Security is like an onion - the more you dig in the more you want to cry"

  • du musst einfach nur im VCP IPV6 aktivieren und dir dann eine ip aus deinem Adressbereich aussuchen.


    dann in /etc/network/interfaces


    folgendes hinzufügen:


    Code
    iface eth0 inet6 static
    	address xxx:xxx:x:xxxx::1
    	netmask 64


    xxx natürlich durch deinen Adressbereich ersetzen. Dies wäre dann die erste Ip deines Adressbereichs.


    Danach den vServer durch poweroff + start übers VCP neustarten


    Dann trägst du in Froxlor einfach bei IP's and Ports die Ip ein. Nun noch die Ip Adresse dem Kunden zuweisen, 5 Min warten und es sollte funktionieren.

  • IPv6 – Wikipedia heißt nur, der Server ist sowohl unter IPv4 als auch IPv6 erreichbar.


    Aber mal was ganz anderes: Solche "Bastelearbeiten" macht man eigentlich in einer Testumgebung.

    Nunja, leider habe ich keine Testumgebung. Habe mir eben den vServer zugelegt, damit ich etwas experimentieren kann und dinge wie memcached und andere php erweiterungen selbst installieren kann. Ich spiele gern und viel mit PHP rum und bastele Webseiten für Gott und die Welt hier im näheren Umkreis.
    Das ich den vServer selbst konfigurieren muss habe ich dabei in kauf genommen, spaß macht mir das leider keinen, da ich bisher nur über das gefährliche Halbwissen verfüge.

    Habe ich Schritt für Schritt so gemacht.
    Bei Froxlor hatte ich zuvor schon versucht bei IP und Ports meine IPv6 einzutragen, funktionierte jedoch nicht. Nun nach dem editieren der Datei ging es ohne Probleme, danke!
    Nun habe ich allerdings bei den Domain einstellungen bloß die wahl zwischen beiden IPs, wie bekomme ich das ganze dual stack?

  • Ahm, soviel zur Testumgebung, mein Apache startet nichtmehr!!! Hilfe!


    Starting web server: apache2(99)Cannot assign requested address:
    make_sock: could not bind to address [2a03:4000:1::2e26:f1e3:1]:80
    no listening sockets available, shutting down
    Unable to open logs
    Action 'start' failed.
    The Apache error log may have more information.
    failed!


    Froxlor halt wohl irgendeinen mist gesetzt und jetzt komm ich natürlich nichtmals ins froxlor. Schätze mal bei "IP und Ports" wird ja was in einer congif datei geändert... Wo liegt diese und wie kann ich sie wieder in ursprungszustand bringen?

    MfG Nico :)

    Einmal editiert, zuletzt von Niconator () aus folgendem Grund: Mehr Infos..

  • Aber mal was ganz anderes: Solche "Bastelearbeiten" macht man eigentlich in einer Testumgebung.
    Nunja, leider habe ich keine Testumgebung. Habe mir eben den vServer zugelegt, damit ich etwas experimentieren kann und dinge wie memcached und andere php erweiterungen selbst installieren kann. Ich spiele gern und viel mit PHP rum und bastele Webseiten für Gott und die Welt hier im näheren Umkreis.
    Das ich den vServer selbst konfigurieren muss habe ich dabei in kauf genommen, spaß macht mir das leider keinen, da ich bisher nur über das gefährliche Halbwissen verfüge.



    Das ist wie die erste Fahrstunde direkt auf der Autobahn. Du gefährdest damit nicht nur dich sondern auch andere. Ich meinte mit Testumgebung eher, dass du die vorhandene Software erstmal in z.B. VMWare/Virtualbox *außerhalb* des Internet testet, weil du mit einer Fehlkonfiguration leicht zum Ziel von z.B. Skriptkiddies werden kannst. Dann ist dein Server genauso weg, als würdest du dein produktives System ausversehen kaputt machen und die Webseite ist plötzlich nicht mehr verfügbar.


    Wenn du wirklich Lernen willst wie die ganze Software funktioniert und zusammenspielt, dann verzichte auf Spielereien wie Froxlor. Die implementieren *immer* ihre eigene Logik. Wenn du dort ein Problem hast, dann ist das immer ein Problem, welches spezifisch für das Tool ist. Um solche Tools sauber bedienen zu können, musst du *sowohl* das Tool als *auch* die durch das Tool verwaltete Software gut kennen. Apache selbst kann IPv6 seit ca März 2001.

    "Security is like an onion - the more you dig in the more you want to cry"

  • Mir ist klar was du meinst, können wir aber gerne drüber diskutieren wenn ich meinen Apache wieder online gebracht habe! ;)
    Und ja, ich will lernen, doch war das ganze nicht so geplant, ein managed Server wäre mir zwar irgendwo lieber aber kostet halt auch entsprechend...

  • VirtualBox/VMWare kostet so ungefähr 0€/Monat, ein weiterer Server als Testumgebung 4,49€/Monat laut Preisliste hier.




    Ahm, soviel zur Testumgebung, mein Apache startet nichtmehr!!! Hilfe!


    Starting web server: apache2(99)Cannot assign requested address:
    make_sock: could not bind to address [2a03:4000:1::2e26:f1e3:1]:80 [...]


    Froxlor halt wohl irgendeinen mist gesetzt und jetzt komm ich natürlich nichtmals ins froxlor.


    Kommentiere einfach die kaputte Stelle aus. Und bevor du einfach den Webserver spontan neu startest: die-unbelehrbaren.de: Apache Konfiguration testen

    "Security is like an onion - the more you dig in the more you want to cry"

  • hast du irgendetwas manuell an den vhost config vom apache geändert?
    schonmal den vserver neu gestartet? Ich denke, da lauscht noch irgend etwas auf port 80.



    Entweder manuell alles anlegen, oder über ein webpanel wie froxlor. Beides verträgt sich nicht so wirklich.

  • hast du irgendetwas manuell an den vhost config vom apache geändert?
    schonmal den vserver neu gestartet? Ich denke, da lauscht noch irgend etwas auf port 80.



    Entweder manuell alles anlegen, oder über ein webpanel wie froxlor. Beides verträgt sich nicht so wirklich.

    Nein, nichts manuell editiert außer zuvor die Datei. Rückgänig machen der Änderungen in der Datei bringt auch nichts. Weiterhin die gleiche Fehlermeldung im start up log vom VCP.


    ---


    Uff! Hab die "Böse" Datei gefunden, ihr name ist 10_froxlor_ipandport_2a03.4000.1.2e26.f1e3.1.80.conf und wurde beim hinzufügen der IP zu froxlor erstellt. Nach löschen der Datei via ftp läuft der apache und der rest vom servern nun wieder wie gewohnt!


    Jetzt bin ich auch offen für ratschläge zum Thema testumgebung! Nach so einem schock! xD
    Werd mir mal "VirtualBox/VMWare" anschauen, danke für den Tipp!


    Und vielen dank für den Apache config Test Kram, kannte ich auch noch nicht! :thumbup:


    Das ursprüngliche Problem besteht nun aber immernoch... Wie es nicht geht wissen wir schonmal... :(

    MfG Nico :)

    2 Mal editiert, zuletzt von Niconator () aus folgendem Grund: Fixed!