Forutsetninger
Installer PHP 7.3 på din webserver
Test PHP
Forutsetninger
- En Vultr-server som kjører oppdatert Arch Linux (se denne artikkelen .)
- En kjørende webserver, enten Apache eller Nginx
- Sudo tilgang.
- Kommandoer som kreves for å kjøres som root, er prefikset av
#. Den anbefalte måten å kjøre kommandoer som root er å, som en vanlig bruker, prefiksere hver av dem med sudo.
- Ha et tekstredigeringsprogram installert, og bli kjent med det, for eksempel vi, vim, nano, emacs eller en lignende editor
Installer PHP 7.3 på din webserver
Installer PHP og FastCGI for PHP:
# pacman -S php-fpm
Besøk PHPs tidssoneliste
Still inn tidssonen din. For eksempel, hvis du valgte kategorien "Amerika" og ønsket å bruke "New_York", rediger /etc/php/php.iniog angi følgende:
date.timezone = America/New_York
Start FastCGI for PHP, og få det til å starte etter hver oppstart:
# systemctl enable --now php-fpm
Konfigurer PHP for webserveren din.
For Apache
Opprett filen /etc/httpd/conf/extra/php-fpm.confmed følgende innhold. Sørg for å kopiere dette nøyaktig slik det er; en vanlig feil er å sette mellomrom rundt pipetegnet, men dette er ikke en shell-kommando, og det kan ikke være mellomrom:
DirectoryIndex index.php index.html
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php-fpm/php-fpm.sock|fcgi://localhost/"
</FilesMatch>
Tillat Apache å bruke FastCGI ved å redigere /etc/httpd/conf/httpd.conf, og legg til følgende på slutten av LoadModule-listen:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
For å tillate bruk av .phpfiler på alle nettsteder som Apache er vert for, rediger /etc/httpd/conf/httpd.conf, og legg til dette til slutt. Hvis du kjører flere vertskataloger; for eksempel virtuelle verter, eller separate HTTP/HTTPS-kataloger; og du vil bare tillate .phpfiler på noen av dem, rediger konfigurasjonsfilene deres. VirtualHostLegg til følgende i blokken:
Include conf/extra/php-fpm.conf
Til slutt, start Apache på nytt:
# systemctl restart httpd
For Nginx
Tillat Nginx å bruke FastCGI for PHP ved å lage filen /etc/nginx/php.confmed følgende innhold:
# Correctly handle request like /test.php/foo/blah.php or /test.php/
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
try_files $uri $document_root$fastcgi_script_name =404;
# Mitigate <nowiki>https://httpoxy.org/</nowiki> vulnerabilities
fastcgi_param HTTP_PROXY "";
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
Tillat Nginx å bruke FastCGI ved å redigere /etc/nginx/nginx.conf, og til hver serverblokk du vil bruke PHP med, legg til følgende. Alternativt, hvis du bruker virtuelle verter, rediger hver verts konfigurasjonsfil:
location ~ \.php$ {
root /usr/share/nginx/html/;
include php.conf;
}
Start Nginx på nytt:
# systemctl restart nginx
Test PHP
Innenfor den aktuelle katalogen, opprett test.phpmed følgende innhold:
<?php phpinfo(); ?>
I en nettleser, besøk http://YOUR-SERVER-WEB-ADDRESS-OR-IP/test.php, og du vil se en nettside med din PHP-versjon og konfigurasjon.
Husk å slette test.phptestfilen du nettopp opprettet.