Prasyarat
- Pelayan Vultr yang menjalankan Arch Linux terkini (lihat artikel ini .)
- Seorang pelayan web yang menjalankan, sama ada Apache atau Nginx
- Akses Sudo.
- Perintah yang diperlukan untuk dijalankan sebagai root adalah yang diawali oleh
#. Cara yang disyorkan untuk menjalankan arahan sebagai root ialah, sebagai pengguna biasa, awalan masing-masing dengan sudo.
- Sediakan editor teks, dan kenali dengannya, seperti vi, vim, nano, emacs atau editor yang sama
Pasang PHP 7.3 Pada Pelayar Web anda
Pasang PHP dan FastCGI untuk PHP:
# pacman -S php-fpm
Lawati senarai zon waktu PHP
Tetapkan zon waktu anda. Sebagai contoh, jika anda memilih kategori "Amerika" dan mahu menggunakan "New_York", edit /etc/php/php.inidan tetapkan yang berikut:
date.timezone = America/New_York
Mula FastCGI untuk PHP, dan buatnya bermula selepas setiap boot:
# systemctl enable --now php-fpm
Konfigurasikan PHP untuk pelayan laman web anda.
Untuk Apache
Buat fail /etc/httpd/conf/extra/php-fpm.conf, dengan kandungan berikut. Pastikan untuk menyalinnya dengan tepat; ralat yang biasa adalah meletakkan ruang di sekitar watak paip, tetapi ini bukan perintah shell, dan tidak ada ruang:
DirectoryIndex index.php index.html
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php-fpm/php-fpm.sock|fcgi://localhost/"
</FilesMatch>
Benarkan Apache menggunakan FastCGI dengan menyunting /etc/httpd/conf/httpd.conf, dan tambahkan yang berikut di akhir senarai LoadModule:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
Untuk membenarkan penggunaan .phpfail di semua laman web yang dihoskan oleh Apache, edit /etc/httpd/conf/httpd.confdan tambahkan ini hingga akhir. Sekiranya anda menjalankan banyak direktori hos; contohnya, hos maya, atau direktori HTTP / HTTPS yang berasingan; dan anda hanya mahu membenarkan .phpfail pada sebahagian daripadanya, mengedit fail konfigurasi mereka. Di dalam VirtualHostblok, tambahkan yang berikut:
Include conf/extra/php-fpm.conf
Akhirnya, mulakan semula Apache:
# systemctl restart httpd
Untuk Nginx
Benarkan Nginx menggunakan FastCGI untuk PHP dengan membuat fail /etc/nginx/php.confdengan kandungan berikut:
# 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;
Benarkan Nginx menggunakan FastCGI dengan mengedit /etc/nginx/nginx.conf, dan kepada setiap blok pelayan yang anda ingin gunakan PHP dengan, tambah yang berikut. Sebagai alternatif, jika anda menggunakan hos maya, edit fail konfigurasi setiap hos:
location ~ \.php$ {
root /usr/share/nginx/html/;
include php.conf;
}
Mulakan semula Nginx:
# systemctl restart nginx
Test PHP
Dalam direktori yang sesuai, buat test.phpdengan kandungan berikut:
<?php phpinfo(); ?>
Dalam penyemak imbas web, kunjungi http://YOUR-SERVER-WEB-ADDRESS-OR-IP/test.php, dan anda akan melihat halaman web dengan versi dan konfigurasi PHP anda.
Ingat untuk memadam test.phpfail ujian yang baru anda buat.