Σωστό ανέβασμα και εκτέλεση cgi-scripts
Πρόβλημα με CGI scripts που ανεβαίνουν στον server και δε λειτουργούν;
Το μεγαλύτερο πρόβλημα συναντάται όταν πχ ένα αρχείο Perl δε δημοσιεύεται (uploading) ως μορφή κειμένου τύπου ASCII text αλλά ως μορφή binary text το οποίο αποτρέπει τη σωστή μετατροπή γραμμών κειμένου.
Σιγουρευτείτε ότι έχετε δημοσιεύσει το Perl αρχείο σας σε μορφή ASCII text! Άλλα κοινά προβλήματα:
1) Εάν τα scripts δεν είναι εκτελέσιμα από όλους, (δεν έχουν σωστά permissions), δώστε την εντολή chmod 755 *.cgi στο directory που βρίσκονται τα αρχεία σας.
2) Εάν οι καταλήξεις των αρχείων είναι .pl, μετονομάστε σε .cgi
3) Εάν τo script προσπαθεί να γράψει σε ένα αρχείο που δεν έχει permission εγγραφής, ή δεν υπάρχει: Δημιουργήστε ένα αρχείο (π.χ. touch data.txt) Βάλτε σωστά permissions (π.χ. chmod o+w data.txt)
4) Ίσως υπάρχει πρόβλημα όταν ρυθμίζετε ένα κοινό script στις ανάγκες σας, ξεχνάτε να προσθέσετε την άνω τελεία μετά από κάθε γραμμή ή προσθέσατε τους χαρακτήρες όπως ", ', . κλπ. Αυτοί οι χαρακτήρες χρειάζονται ένα χαρακτήρα ( ) πριν.
- Έκανα όλα τα παραπάνω αλλά τα scripts μου πάλι δε δουλεύουν!
Θα χρειαστεί να τα διορθώσετε μέσα από SSH. Στη γραμμή εντολών δακτυλογραφήστε: perl -w yourscript.cgi και δείτε το αποτέλεσμα.