PHP installeren

Waarschijnlijk heeft jouw Ubunty distibution al een basis PHP aan boord, maar we gaan hier een FastCGI Process Manager aan toevoegen. Dat is php-fpm. En we installeren ook maar meteen php-mysql en php-mbstring mee, die je toch nodig hebt voor Laravel.

Eventueel kun je in dezelfde regel nog meer pakketten kwijt. Ik kies er hier voor om ook meteen php7.0-sqlite3, php7.0-zip en php7.0-GD te installeren.

[codebox]sudo apt-get install php7.0-fpm php7.0-mysql php7.0-mbstring php7.0-sqlite3 php7.0-zip php7.0-gd php7.0-xml[/codebox]

Nu moeten we nog een kleine security instelling doen. Open de file php.ini.

[codebox]sudo nano /etc/php/7.0/fpm/php.ini[/codebox]

Zoek naar de regel cgi.fix_pathinfo=1. Dat kun je het eenvoudigste doen met <ctrl>-W en dan die tekst intypen.

Je vindt nu:

[entrybox]….

; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI.  $
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not $
; what PATH_INFO is.  For more information on PATH_INFO, see the cgi specs.  Se$
; this to 1 will cause PHP CGI to fix its paths to conform to the spec.  A sett$
; of zero causes PHP to behave as before.  Default is 1.  You should fix your s$
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; http://php.net/cgi.fix-pathinfo
;cgi.fix_pathinfo=1

; if cgi.discard_path is enabled, the PHP CGI binary can safely be placed outsi
….[/entrybox]

Verander nu de cgi.fix_pathinfo=1 in cgi.fix_pathinfo=0 en verwijder de ; voor de regel.

[entrybox]…
cgi.fix_pathinfo=0

; if cgi.discard_path is enabled….[/entrybox]

Sla het bestand op met <ctrl>-x en ‘Y’.

Nu nog even PHP opnieuw starten en we zijn klaar.

[codebox]sudo systemctl restart php7.0-fpm[/codebox]