Voraussetzungen
- Ein Vultr-Server, auf dem Arch Linux auf dem neuesten Stand ist (siehe diesen Artikel ).
- Ein laufender Webserver, entweder Apache oder Nginx
- Sudo Zugang.
- Befehlen, die als root ausgeführt werden müssen, wird ein Präfix vorangestellt
#
. Die empfohlene Methode zum Ausführen von Befehlen als Root besteht darin, jedem von ihnen als regulärer Benutzer ein Präfix voranzustellen sudo
.
- Lassen Sie einen Texteditor installieren und machen Sie sich mit ihm vertraut, z. B. vi, vim, nano, emacs oder einem ähnlichen Editor
Installieren Sie PHP 7.3 auf Ihrem Webserver
Installieren Sie PHP und FastCGI für PHP:
# pacman -S php-fpm
Besuchen Sie die Zeitzonenliste von PHP
Stellen Sie Ihre Zeitzone ein. Wenn Sie beispielsweise die Kategorie "Amerika" ausgewählt haben und "New_York" verwenden möchten, bearbeiten /etc/php/php.ini
und setzen Sie Folgendes:
date.timezone = America/New_York
Starten Sie FastCGI für PHP und starten Sie es nach jedem Start:
# systemctl enable --now php-fpm
Konfigurieren Sie PHP für Ihren Webserver.
Für Apache
Erstellen Sie die Datei /etc/httpd/conf/extra/php-fpm.conf
mit den folgenden Inhalten. Stellen Sie sicher, dass Sie dies genau so kopieren, wie es ist. Ein häufiger Fehler besteht darin, Leerzeichen um das Pipe-Zeichen zu setzen. Dies ist jedoch kein Shell-Befehl, und es dürfen keine Leerzeichen vorhanden sein:
DirectoryIndex index.php index.html
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php-fpm/php-fpm.sock|fcgi://localhost/"
</FilesMatch>
Erlauben Sie Apache, FastCGI durch Bearbeiten zu verwenden /etc/httpd/conf/httpd.conf
, und fügen Sie am Ende der LoadModule-Liste Folgendes hinzu:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
Um die Verwendung von .php
Dateien auf allen von Apache gehosteten Websites zu ermöglichen , bearbeiten /etc/httpd/conf/httpd.conf
Sie diese und fügen Sie sie am Ende hinzu. Wenn Sie mehrere Hostverzeichnisse ausführen; Zum Beispiel virtuelle Hosts oder separate HTTP / HTTPS-Verzeichnisse. und Sie möchten nur .php
Dateien für einige von ihnen zulassen , ihre Konfigurationsdateien bearbeiten. Fügen Sie innerhalb des VirtualHost
Blocks Folgendes hinzu:
Include conf/extra/php-fpm.conf
Starten Sie schließlich Apache neu:
# systemctl restart httpd
Für Nginx
Erlauben Sie Nginx, FastCGI für PHP zu verwenden, indem Sie die Datei /etc/nginx/php.conf
mit den folgenden Inhalten erstellen :
# 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;
Erlauben Sie Nginx, FastCGI durch Bearbeiten zu verwenden /etc/nginx/nginx.conf
, und fügen Sie zu jedem Serverblock, mit dem Sie PHP verwenden möchten, Folgendes hinzu. Wenn Sie virtuelle Hosts verwenden, bearbeiten Sie alternativ die Konfigurationsdatei jedes Hosts:
location ~ \.php$ {
root /usr/share/nginx/html/;
include php.conf;
}
Starten Sie Nginx neu:
# systemctl restart nginx
Testen Sie PHP
Erstellen Sie im entsprechenden Verzeichnis test.php
den folgenden Inhalt:
<?php phpinfo(); ?>
Besuchen http://YOUR-SERVER-WEB-ADDRESS-OR-IP/test.php
Sie in einem Webbrowser, und Sie sehen eine Webseite mit Ihrer PHP-Version und -Konfiguration.
Denken test.php
Sie daran, die soeben erstellte Testdatei zu löschen .