Εκμάθηση PHP/Σε τοπικό υπολογιστή/Αρχική

Από Βικιεπιστήμιο
Πήδηση στην πλοήγηση Πήδηση στην αναζήτηση

Προαπαιτούμενα[επεξεργασία]

Απαραίτητες γνώσεις[επεξεργασία]

  • Βασική γνώση της html.
  • Βασικές αρχές λειτουργίας εξυπηρετητή (διακομιστή) ιστοσελίδων.
  • Βασική γνώση εκτέλεσης εντολών σε τερματικό (κονσόλα, γραμμή εντολών).
  • Τι είναι η γραμμή διευθύνσεων στον περιηγητή ιστοσελίδων.

Δημιουργία αρχικού καταλόγου[επεξεργασία]

Για ευκολότερη πρόσβαση είναι προτιμότερο να δημιουργήσετε έναν κατάλογο (φάκελο) ο οποίος θα είναι ο κεντρικός κατάλογος του τοπικού εξυπηρετητή και στον οποίο θα αποθηκεύουμε όλα τα αρχεία. Ο κατάλογος μπορεί να δημιουργηθεί και στην επιφάνεια εργασίας. Για καλύτερη συνεννόηση θα ονομάσουμε αυτόν τον φάκελο myphp.

Εγκατάσταση βασικού συστήματος[επεξεργασία]

Για να μπορέσετε να παρακολουθήσετε το μάθημα θα πρέπει να εγκαταστήσετε την php. Όλες οι αναφορές στο μάθημα αφορούν την php 7.0, αλλά, εκτός εξαιρέσεων, μπορούν να χρησιμοποιηθούν και επόμενες εκδόσεις.

Στα λειτουργικά συστήματα με Linux συνήθως η php είτε είναι ήδη εγκατεστημένη, ή μπορείτε να την εγκαταστήσετε μέσω της διαχείρισης πακέτων της διανομής σας. Για τα Windows θα χρειαστεί να κατεβάσετε ένα πρόγραμμα εγκατάστασης από το php.net. Για το Android θα χρειαστεί να εγκαταστήσετε ένα πρόγραμμα για την εκτέλεση εντολών από τη γραμμή εντολών όπως το termux, με το οποίο θα εγκαταστήσετε και την php, αλλά θα μπορείτε και να εκκινείτε τον υποτυπώδη τοπικό εξυπηρετητή ιστοσελίδων.

Προτιμήστε την έκδοση 7.0.xx ώστε να υπάρχει μεγαλύτερη συμβατότητα με τα μαθήματα.

Προαιρετικά[επεξεργασία]

Εγκατάσταση ενός απλού επεξεργαστή κώδικα όπως το Notepad++ ή το Geany ώστε να είναι πιο εύκολη η διαδικασία δημιουργίας των απαιτούμενων αρχείων.

Δοκιμή[επεξεργασία]

Δημιουργήστε και αποθηκεύστε ένα αρχείο με το όνομα index.php και περιεχόμενο τον κώδικα που βλέπετε παρακάτω:

<?php 
echo 'Γειά σου κόσμε!';
?>

Το αρχείο μπορεί να αποθηκευτεί οπουδήποτε, αλλά καλύτερα να δημιουργήσετε έναν φάκελο (όπου επιθυμείτε, ακόμα και στην επιφάνεια εργασίας) και σώζετε μέσα σε αυτόν τα αρχεία.

Ανοίξτε ένα παράθυρο τερματικού και μεταβείτε στον φάκελο που έχετε αποθηκεύσει το αρχείο index.php

Βεβαιωθείτε ότι είστε στο σωστό κατάλογο πληκτρολογώντας: pwd (σε linux και Android) ή cd (στα windows).

Τώρα πληκτρολογείστε το:

php -S localhost:8000

Λογικά θα σας παρουσιαστεί το:

PHP 7.0.22 Development Server started at Thu Jul 21 10:43:28 2011
Listening on localhost:8000
Document root is /home/me/Desktop/myphp
Press Ctrl-C to quit

Μην κλείσετε το παράθυρο της κονσόλας! Από αυτή τη στιγμή τρέχει στον υπολογιστή σας ένας υποτυπώδης τοπικός εξυπηρετητής ιστοσελίδων με php προεπεξεργαστή. Ανοίξτε τώρα τον αγαπημένο σας περιηγητή ιστοσελίδων (πλοηγό, Web browser) και γράψτε τη διεύθυνση (στη γραμμή διευθύνσεων, όχι στο πεδίο αναζήτησης κάποιας μηχανής αναζήτησης π.χ. του Google): http://localhost:8000/

Κανονικά θα πρέπει να σας δείξει το κείμενο «Γειά σου κόσμε!» (χωρίς, φυσικά, τα εισαγωγικά). Επίσης στο τερματικό θα πρέπει να εμφανιστεί η ένδειξη ότι εξυπηρετήθηκε μία σελίδα, κάτι σαν:

[Thu Jan 11 18:43:01 2018] 127.0.0.1:36686 [200]: /
[Thu Jan 11 18:43:01 2018] 127.0.0.1:36688 [404]: /favicon.ico - No such file or directory
[Thu Jan 11 18:43:01 2018] 127.0.0.1:36690 [404]: /favicon.ico - No such file or directory

Κλείστε τον υποτυπώδη τοπικό εξυπηρετητή ιστοσελίδων πληκτρολογώντας Ctrl-C στο τερματικό από το οποίο τον ξεκινήσατε.

Εξάσκηση[επεξεργασία]

Κλείστε τον τοπικό εξυπηρετητή ιστοσελίδων. Δοκιμάστε αν μπορείτε να διαβάσετε τη σελίδα (κανονικά θα σας εμφανίσει μήνυμα λάθους).

Αλλάξτε το περιεχόμενο του κειμένου στο αρχείο index.php

<?php 
echo 'Γειά σου κι εσένα!';
?>

και αποθηκεύστε το. Τώρα ξαναξεκινήστε τον τοπικό εξυπηρετητή ιστοσελίδων. Δοκιμάστε στον περιηγητή ιστοσελίδων να δείτε η νέα σελίδα.

Αλλάξτε ξανά το κείμενο του αρχείου index.php σε:

<?php 
echo 'Και μια αλλαγή ακόμα.';
?>

αποθηκεύστε το και, χωρίς να επανεκκινήσετε τον τοπικό εξυπηρετητή ιστοσελίδων, ξαναφορτώστε τη σελίδα στον περιηγητή σας.

Αν χρησιμοποιείτε firefox κάντε δεξί κλικ και επιλέξτε την προβολή πηγαίου κώδικα. Δείτε τι εμφανίζει. Είναι το κείμενο που έστειλε ο εξυπηρετητής στον περιηγητή σας. Είναι διαφορετικό από αυτό που έχει το αρχείο index.php

Αν όλα είναι εντάξει μπορούμε να προχωρήσουμε στο επόμενο μάθημα.

Περισσότερες επιλογές[επεξεργασία]

Η γενικότερη εντολή για την εκκίνηση του υποτυπώδους τοπικού εξυπηρετητή ιστοσελίδων είναι:

php -S ΔΙΕΥΘΥΝΣΗΠΟΥΑΚΟΥΕΙ:ΑΡΙΘΜΟΣΘΥΡΑΣ -t ΠΛΗΡΗΣΔΙΑΔΡΟΜΗΓΙΑΤΟΝΡΙΖΙΚΟΚΑΤΑΛΟΓΟ

όπου:

  • ΔΙΕΥΘΥΝΣΗΠΟΥΑΚΟΥΕΙ είναι μία διεύθυνση IP στην οποία θα «ακούει» ο εξυπηρετητής. Μπορεί να είναι η 0.0.0.0 ώστε ο εξυπηρετητής να «ακούει» σε όλες τις διευθύνσεις. Για τις ανάγκες του μαθήματος θα χρησιμοποιήσουμε το «localhost».
  • ΑΡΙΘΜΟΣΘΥΡΑΣ είναι η θύρα στην οποία θα «ακούει» ο εξυπηρετητής. Μπορεί να είναι οποιοσδήποτε αριθμός μεγαλύτερος από το 1024 και μικρότερος από το 65536. Επειδή όμως μερικές θύρες συνηθίζεται να χρησιμοποιούνται από συγκεκριμένα προγράμματα για τις ανάγκες του μαθήματος θα προτιμήσουμε τη θύρα 8000 ή κάποια κοντά σε αυτήν (8001, 8002 κλπ.).
  • ΠΛΗΡΗΣΔΙΑΔΡΟΜΗΓΙΑΤΟΝΡΙΖΙΚΟΚΑΤΑΛΟΓΟ είναι η διαδρομή για τον φάκελο που θα χρησιμοποιεί ο υποτυπώδης τοπικός εξυπηρετητής ιστοσελίδων. Η διαδρομή θα πρέπει να είναι πλήρης. Αν δεν χρησιμοποιηθεί η επιλογή -t ΠΛΗΡΗΣΔΙΑΔΡΟΜΗΓΙΑΤΟΝΡΙΖΙΚΟΚΑΤΑΛΟΓΟ το πρόγραμμα θα ορίσει τον κατάλογο (φάκελο) στον οποίο βρίσκεστε εκείνη τη στιγμή.

Προβλήματα[επεξεργασία]

Αν ήδη στον υπολογιστή σας λειτουργεί κάποιος εξυπηρετητής ιστοσελίδων στη θύρα 8000 τότε δεν θα μπορέσει να ξεκινήσει ο υποτυπώδης τοπικός εξυπηρετητής ιστοσελίδων με προεπεξεργαστή php που θέλουμε. Οπότε δώστε άλλη θύρα π.χ. php -S localhost:8001 ή php -S localhost:8002