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]