Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Apache sendet Fehler 500 im Header baut aber Seite fehlerfrei auf

Frage Linux Apache Server

Mitglied: Maik87

Maik87 (Level 2) - Jetzt verbinden

30.12.2012 um 01:17 Uhr, 3586 Aufrufe, 13 Kommentare

Hallo zusammen,

ich musste mit meiner Website umziehen und stehe nun vor folgendem Problem:

Die Website wird im Browser korrekt aufgebaut, im Header steht jedoch der Code 500. Google und co mögen dies natürlich nicht...

Die LogDatein auf dem Server sind alle samt leer, ein richtiger Fehler 500 ist es auch nicht. Die Seite wird ja korrekt aufgebaut. Auch auf die Fehlerseite 500 reagiert der Server nicht - 404 etc werden akzeptiert. Also kann es ja nur am Header liegen...

Aber wie wird dieser "versaut"?
Mitglied: Hitman4021
30.12.2012 um 11:26 Uhr
Hallo,

was ist das für eine Website? PHP? HTML?
Apache Konfig?
Apache LogLevel?

Gruß
Bitte warten ..
Mitglied: Guenni
30.12.2012 um 13:03 Uhr
Hi Maik87,

Errorcode 500 ist ein Internal Server Error, der auftritt, wenn z.B. ein CGI-Script nicht gestartet werden konnte.

Das kommt vor, wenn Scripte bearbeitet oder kopiert wurden, was ja bei deinem Umzug der Fall ist.

Dann ändern sich Eigentums- und/oder Ausführungsrechte, was bei einem CGI-Script nicht sein darf.

Andere Fehlerquellen können sein:

- Hat sich aus irgendeinem Grund die Schreibweise (Groß/Klein) geändert?

- Sind bestimmte Dateiendungen (*.cgi, *.pl, oder gar keine) vom Provider vorgeschrieben?

- Sind die Dateien im Ascii-Modus übertragen worden?

Gruss
Günni

Quellen:

http://de.selfhtml.org/servercgi/server/httpstatuscodes.htm

http://de.selfhtml.org/servercgi/cgi/cgipublik.htm
Bitte warten ..
Mitglied: Maik87
30.12.2012 um 13:21 Uhr
Hallo,
die Seite ist komplett in PHP gehalten.

Wie der Apache Loglevel aussieht, keine Ahnung. Der Provider sagt nur, dass der Log keine Fehler ausweist.

Der PHP-Log, den ich selbst im Zugriff hab, schweigt sich aus.
Bitte warten ..
Mitglied: Maik87
30.12.2012 um 13:57 Uhr
Zitat von Guenni:
Hi Maik87,

Errorcode 500 ist ein Internal Server Error, der auftritt, wenn z.B. ein CGI-Script nicht gestartet werden konnte.

Ich weiß. Jedoch bekomme ich ja nicht die Fehlerseite 500 sondern nur die 500 im Header. Die Seite wird dem User übertragen, als wenn alles korrekt wäre.

Das kommt vor, wenn Scripte bearbeitet oder kopiert wurden, was ja bei deinem Umzug der Fall ist.

Dann ändern sich Eigentums- und/oder Ausführungsrechte, was bei einem CGI-Script nicht sein darf.

Die Seite besteht ausschließlich aus *.php und *.jpg. CGI-Scripte etc sind keine im Einsatz.

Andere Fehlerquellen können sein:

- Hat sich aus irgendeinem Grund die Schreibweise (Groß/Klein) geändert?

Auf den ersten Blick nicht.

- Sind bestimmte Dateiendungen (*.cgi, *.pl, oder gar keine) vom Provider vorgeschrieben?

Weiß ich nicht. Da die Seite aber nur aus PHP besteht und diese Endung funktioniert, gehe ich nicht davon aus, dass der Fehler hier zu suchen ist.

- Sind die Dateien im Ascii-Modus übertragen worden?

Ich habe die Website als zip-Datei von meinem alten Provider bekommen, auf den neuen Webspace geladen und vom Provider entpacken lassen.


Inzwischen habe ich schon folgendes (zufällig) herausgefunden:
Der Fehler tritt nur auf, wenn Bilder über eine bestimmte PHP-Funktion im Spiel sind. Über dem img-tag eingebunden, sind sie kein Problem.

Ich werde mal den Code analysieren und schauen, auf was diese Funktion alles zugreift etc. Vielleicht wurde eine Datei oder ein Ordner nicht richtig übertragen, es fehlen irgendwo Schreibrechte oder durch die anderen PHP Version (die aktuelle ist 5.3.3 - die alte weiß ich nicht), funktioniert eine gewisse Funktion nicht mehr. Eventuell auch eine Providereinstellung - wobei dieser eigentlich sehr großzügig mit den Berechtigungen um sich wirft.
Bitte warten ..
Mitglied: Hitman4021
30.12.2012 um 14:39 Uhr
Hallo,

deine PHP Seite kann auch als CGI ausgeführt werden.

Leg mal eine PHP Datei mit einem phpinfo() an und schau ob der gleiche Fehler auftritt.
Und lass dir von PHP dein eigenes ErrorLog mit PHP Fehlern mitschreiben!

Gruß
Bitte warten ..
Mitglied: Maik87
30.12.2012 um 14:45 Uhr
Leg mal eine PHP Datei mit einem phpinfo() an und schau ob der gleiche Fehler auftritt.
Hab ich schon - geht. Andere von mir erstellte Scripte laufen auch.

Und lass dir von PHP dein eigenes ErrorLog mit PHP Fehlern mitschreiben!
Mach ich... Ist leer.

Konnte den Fehler inzwischen sooo weit eingrenzen, dass ich eine Funktion ausfindig machen konnte, die Thumbnails erstellt. Ist diese auskommentiert, läuft es. Ich muss nur noch finden, wo diese deklariert ist.

Aber wieso nur der Header meckert aber die Seite aufgebaut wird, verstehe ich bis jetzt noch nicht...
Bitte warten ..
Mitglied: dog
30.12.2012 um 14:49 Uhr
Aber wieso nur der Header meckert aber die Seite aufgebaut wird, verstehe ich bis jetzt noch nicht...

Wahrscheinlich weil PHP im Blindflug-Modus läuft.
Füg mal in die entsprechende PHP-Datei, die du im Browser aufrufst ganz an den Anfang folgendes ein:
01.
<?php 
02.
  error_reporting(E_ALL|E_STRICT); 
03.
  ini_set('display_errors','On'); 
04.
?>
Bitte warten ..
Mitglied: Maik87
30.12.2012 um 15:19 Uhr
Zitat von dog:
<?php
error_reporting(E_ALL|E_STRICT);
ini_set('display_errors','On');
?>
</code>

Das wars!!

Ich hatte nur error_reporting(E_ALL); - ohne |E_STRICT
ini_set('display_errors','On'); ist absichtlich auf off, da Produktivsystem.

Jetzt steht folgendes im Log:

PHP Parse error: syntax error, unexpected T_INC in

Wer oder was ist T_INC? Die angesprochene Zeile ist leer - in der Nähe entdecke ich auf den ersten Blick keinen Fehler.

Ich habe noch paar Division by zero gefunden. Die versuche ich mal abzufangen. Nur merkwürdig, dass es beim alten Provider problemlos lief.


DANKE schonmal!!
Bitte warten ..
Mitglied: dog
30.12.2012 um 15:33 Uhr
Wer oder was ist T_INC?

http://php.net/manual/en/tokens.php
Bitte warten ..
Mitglied: Maik87
30.12.2012 um 17:00 Uhr
Danke!

So - Problem "behoben". PHP meckert nicht mehr, browserseitig läuft es auch. Aber der 500er ist wieder im Header.
Bitte warten ..
Mitglied: Hitman4021
30.12.2012 um 17:03 Uhr
Hallo,

du hast irgendwo im PHP Code einen Fehler.
Auf dem alten Server bestand das Problem nicht?
Der Code ist der gleiche?
Gleiche PHP Version?
Gleiche PHP Config?

JavaScript benutzt du nicht oder?

Gruß
Bitte warten ..
Mitglied: Maik87
30.12.2012 um 17:11 Uhr
Ja genau, gleicher Code, neuer Server.
Beides Version 5.3.* Die genaue Version kenne ich vom alten Server nicht.
Wie die Configs aussehen - keine Ahnung!

JavaScript ist prinzipiel im Einsatz, jedoch nicht in diesem Teil des Scripts.
Bitte warten ..
Mitglied: Maik87
30.12.2012, aktualisiert um 19:22 Uhr
Es spuckt wieder Fehler... Mitten im Script wurde die Fehlerbehandlung ausgeschaltet...

Durch den Eintrag PHP Parse error: syntax error, unexpected $end in bin ich auf folgenden, gekürzten Code gestoßen:

01.
$imgtype="!(ImageTypes() & IMG_GIF" .  ")"; 
02.
if ((eval($imgtype)){
Ein kleines Unscheinbares ; was fehlte... In Summe hab ich 4 Fehler behoben, die unter der alten Serverkonfiguration zu keinem Fehler sondern zu Status 200 geführt haben.

Es läuft, es läuft!!

Danke an alle, die geholfen haben!!
Bitte warten ..
Ähnliche Inhalte
Server
IIS 8.5 Server HTTP-Fehler 500.19 - Internal Server Error (1)

Frage von coldice-it zum Thema Server ...

Apache Server
gelöst Apache Webserver HTTP 500 Error (7)

Frage von ClepToManix zum Thema Apache Server ...

Windows Server
gelöst Server-connect ergibt Fehler 500.19 (11)

Frage von beamenwaerschoen zum Thema Windows Server ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Vmware
gelöst Wie würdet Ihr eine ESXi Cluster Farm managen? (11)

Frage von AlFalcone zum Thema Vmware ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...