Die Programmiersprache Ruby

Blog|

Forum|

Wiki  


Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]

Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 23 Aug 2010, 13:58 
Offline
Schüler

Registriert: 27 Jul 2010, 17:45
Beiträge: 41
Hallo, ich habe ein problem dass mich geradezu verzweifeln lässt, ich suche dringend Hilfe!

Ich nutze das Hostingangebot bei Alfahosting, dort steht mir ein ruby1.9.0 zur Verfügung.

Ich selber nutze Offline zum Testen meiner CGI-Skripts einen xampp und ruby 1.9.0. Alle Scripte laufen tadellos, es gibt nichtmal warnings in meinem error.log

aber sobald ich ein Skript auf den Server hochlade (als ASCII mit CHMOD 755), und aufrüfen möchte bekomme ich einen server internal error (500). Nun habe ich leider keinen Zugriff auf meine dortige error.log und der Support hat mich nun darauf hingewiesen dass die einzige Möglichkeit um die Fehler herauszufinden wäre, "Flags einzusetzen, die Ruby bietet". Nun, ich weiß zwar dass es folgende flags gibt:

ruby -w #=> warnings ausgeben, ich habe aber noch nie eins gesehn
ruby -c #=> Syntax-check liefert bei mir immer "OK"
ruby -d #=> debug-modus, soweit ich weiß wird damit $DEBUG auf true gesetzt und ich kann damit arbeiten, was mir das genau bringen soll weiß ich auch noch nicht.

Wie gesagt, bei mir läuft alles auf meinem OfflineServer ohne jegliche Fehlermeldungen/Warnings!

Google hat mir schon ein paar mögliche Fehlerquellen genannt:
- .htaccess überprüft, die ist leer.
- im richtigen Verzeichnis: im cgi-bin/ ordner ist alles ausführbar, und ich habe auch alles so eingestellt dass es außerhalb des verzeichnisses geht. einfachste CGI-skripte alá "Helloworld" funktionieren auch, sobald es aber komplizierter wird kommen die unterschiedlichsten Fehler!
- Shebang-Zeile passt auch, genauso wie die korrekte Ausgabe eines Headers (sonst würden einfache Skripte auch nicht gehen)

Ich komme einfach nicht weiter! für Perl scheint ja die möglichkeit zu bestehen, Fehlermeldungen direkt in STDOUT auszugeben aka im Browser und nicht in STDERR zu schreiben (->error.log), dafür habe ich nach langer suche noch nichts in Ruby gefunden.

Ansonsten weiß ich wirklich nicht mehr weiter wie ich die ominösen Fehlermeldungen finden könnte :(

Hat hier vieleicht jemand nen heißen Tipp für mich wie man solche Fehler finden kann? ich hänge mal ein Beispiel an für ein "3 gewinnt" Spiel, welches bei mir auf dem OfflineServer anstandslos läuft, aber auf dem Server von Alfahosting nicht. Shebang muss ggf angepasst werden.


Dateianhänge:
xxo.zip [7.65 KiB]
88-mal heruntergeladen

_________________
Einsteiger/Umsteiger zu Ruby? Interesse an Einstiegsinformationen zu GUI und/oder CGI? Lies doch gelegentlich in meinem Blog, ich würde mich freuen :)
http://ruby-info.de


Zuletzt geändert von Hisako am 10 Sep 2010, 09:34, insgesamt 1-mal geändert.
Nach oben
 Profil  
 
BeitragVerfasst: 23 Aug 2010, 17:44 
Offline
Interpreter

Registriert: 10 Dez 2007, 17:37
Beiträge: 1709
Als erstes würde ich mir die She-Bang (#!/....) Zeile mal ansehen. Da du Windows verwendest wird dein Ruby an einem anderen Ort liegen,
als bei deinem Hoster. Was dort einzutragen ist, muss dir dein Hoster sagen.

_________________
Grüße
Jack


Nach oben
 Profil  
 
BeitragVerfasst: 23 Aug 2010, 17:59 
Offline
Interpreter

Registriert: 10 Dez 2007, 17:37
Beiträge: 1709
Ich habe mir die Dateien einmal angesehen. Die She-Bang-Zeile kann so nicht funktionieren. Weiterhin solltest du dich an die Dateinamen-Konventionen halten.

_________________
Grüße
Jack


Nach oben
 Profil  
 
BeitragVerfasst: 23 Aug 2010, 19:38 
Offline
Schüler

Registriert: 27 Jul 2010, 17:45
Beiträge: 41
ich sagte ja shebang ggf anpassen. auf dem server ist sie #!/usr/bin/ruby, das ist soweit schon beachtet. was meinst du mit namenskonventionen, könnte das fehler produzieren?

_________________
Einsteiger/Umsteiger zu Ruby? Interesse an Einstiegsinformationen zu GUI und/oder CGI? Lies doch gelegentlich in meinem Blog, ich würde mich freuen :)
http://ruby-info.de


Nach oben
 Profil  
 
BeitragVerfasst: 24 Aug 2010, 09:03 
Offline
Interpreter

Registriert: 10 Dez 2007, 17:37
Beiträge: 1709
Bei deinem aktuellen Script sollte es keine Rolle Spielen, ob du dich an die Konvention alles Klein schreiben und mit _
verbinden hältst.

Auf dem Server funktioniert also ein einfaches Hello World?

Was auffällig ist, dass du Dateien öffnest. Du weist aber nicht, was dein aktuelles Working-Directory ist
und ob du da Schreibrechte hast. Da solltest du die Fehler abfangen.

Entweder benutzt du File.dirname(__FILE__), um einen beschreibbaren Pfad zu ermitteln,
oder du verdrahtest den Pfad hart.

_________________
Grüße
Jack


Nach oben
 Profil  
 
BeitragVerfasst: 24 Aug 2010, 11:45 
Offline
Schüler

Registriert: 27 Jul 2010, 17:45
Beiträge: 41
bei einfachen Sachen funktioniert das öffnen/schließen eigentlich gut (getestet), ich hab meine verzeichnisse alle auf chmod 755 gestellt... aber ich schau nochmal. hast du mal das script getestet ob es bei dir geht? vlt bekommst du ja einen fehler den ich nicht bekomme..

_________________
Einsteiger/Umsteiger zu Ruby? Interesse an Einstiegsinformationen zu GUI und/oder CGI? Lies doch gelegentlich in meinem Blog, ich würde mich freuen :)
http://ruby-info.de


Nach oben
 Profil  
 
BeitragVerfasst: 25 Aug 2010, 07:13 
Offline
Interpreter

Registriert: 10 Dez 2007, 17:37
Beiträge: 1709
Ich werd's heute Abend mal testen.

_________________
Grüße
Jack


Nach oben
 Profil  
 
BeitragVerfasst: 25 Aug 2010, 20:50 
Offline
Interpreter

Registriert: 10 Dez 2007, 17:37
Beiträge: 1709
Bei mir kam xxo.rb:301: invalid multibyte char (beim ü)

Weiterhin funktioniert in ruby 1.9 require auf eine Datei im aktuellen Pfad nicht mehr,
da der aktuelle Pfad nicht mehr im Load-Path ist. Du solltest eher require_relative
dann nehmen. Außerdem hast du einen Typo. Du hast "simpleCGI" statt "SimpleCGI" geschrieben,
Windows kann das ab, Linux nicht.

Jetzt sollte es auch bei dir klappen.

_________________
Grüße
Jack


Nach oben
 Profil  
 
BeitragVerfasst: 27 Aug 2010, 17:06 
Offline
Schüler

Registriert: 27 Jul 2010, 17:45
Beiträge: 41
besten Dank!!

den tipp mit require_relative muss ich mir merken, wusste ich noch gar nicht ;)

_________________
Einsteiger/Umsteiger zu Ruby? Interesse an Einstiegsinformationen zu GUI und/oder CGI? Lies doch gelegentlich in meinem Blog, ich würde mich freuen :)
http://ruby-info.de


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
cron