Servers-CGI/Commandline

Η προεπιλογή είναι να γίνει build η PHP σαν ένα CGI πρόγραμμα. Αυτό δημιουργεί ένα commandline interpreter (μεταφραστή), ο οποίος μπορεί να χρησιμοποιηθεί για επεξεργασία CGI ή για PHP scripting που δεν έχει σχέση με το web. Αν τρέχετε ένα web server για τον οποίο η PHP έχει υποστήριξη module, γενικώς θα πρέπει να επιλέγετε αυτή τη λύση για λόγους απόδοσης. Εν τούτοις, η CGI έκδοση επιτρέπει στους χρήστες του Apache να τρέχουν διαφορετικές PHP σελίδες κάτω από διαφορετικά user-id. Παρακαλούμε διαβάστε πρώτα το κεφάλαιο σχετικά με την Ασφάλεια αν σκοπεύετε να τρέξετε την PHP σαν CGI.

Από την PHP 4.3.0, κάποια σημαντικά πράγματα προστέθηκαν στην PHP. Ένα νέο SAPI με όνομα CLI υπάρχει επίσης και έχει το ίδιο όνομα με το CGI binary. Αυτό που εγκαθίσταται στο {PREFIX}/bin/php εξαρτάται από την configure γραμμή και αυτό περιγράφεται με λεπτομέρεια στην ενότητα του manual με τίτλο Χρησιμοποιώντας την PHP από την command line. Για περισσότερες λεπτομέρειες παρακαλούμε διαβάστε εκείνη την ενότητα του manual.

Testing

If you have built PHP as a CGI program, you may test your build by typing make test. It is always a good idea to test your build. This way you may catch a problem with PHP on your platform early instead of having to struggle with it later.

Benchmarking

If you have built PHP 3 as a CGI program, you may benchmark your build by typing make bench. Note that if safe mode is on by default, the benchmark may not be able to finish if it takes longer then the 30 seconds allowed. This is because the set_time_limit() can not be used in safe mode. Use the max_execution_time configuration setting to control this time for your own scripts. make bench ignores the configuration file.

Σημείωση: make bench is only available for PHP 3.

Using Variables

Some server supplied enviroment variables are not defined in the current CGI/1.1 specification. Only the following variables are defined there; everything else should be treated as 'vendor extensions': AUTH_TYPE, CONTENT_LENGTH, CONTENT_TYPE, GATEWAY_INTERFACE, PATH_INFO, PATH_TRANSLATED, QUERY_STRING, REMOTE_ADDR, REMOTE_HOST, REMOTE_IDENT, REMOTE_USER, REQUEST_METHOD, SCRIPT_NAME, SERVER_NAME, SERVER_PORT, SERVER_PROTOCOL and SERVER_SOFTWARE