


So stellen Sie Nginx-, PHP- und virtuelle Hostkonfigurationen in einer CentOS-Umgebung bereit
Bereitstellungszeit: 24.07.2012
OS-Umgebung: Centos 6.1
nginx: nginx-1.2.2
php: php5.3.14
0. Abhängigkeitspakete installieren
Code kopieren Der Code lautet wie folgt:
yum install openssl-devel pcre-devel zlib-devel libjpeg-devel libpng-devel freetype-devel gcc make
1 www-Benutzer hinzufügen, um nginx auszuführen
Code kopieren Der Code lautet wie folgt:
useradd -m -r -s /sbin/nologin - d /opt/web/ www
2. Erstellen Sie ein temporäres Verzeichnis
Kopieren Sie den Code. Der Code lautet wie folgt:
mkdir -p /var/tmp/nginx/client/
mkdir -p /var/tmp/nginx/proxy/
mkdir -p /var/tmp/nginx/fcgi/
3. Laden Sie die neueste stabile Version des Nginx-Quellcodes herunter
Kopieren Sie den Code. Der Code lautet wie folgt:
cd /usr/local/src/
wget http://nginx.org /download/nginx-1.2.2.tar.gz
4. Entpacken, kompilieren, installieren
Code kopieren Der Code lautet wie folgt:
tar vxzf nginx-1.2.2.tar.gz
cd nginx-1.2.2/
./configure
--prefix=/opt/web/nginx
--error-log-path=/var/log/nginx/ error.log
--pid-path=/var/run/nginx/nginx pid
--lock-path=/var/lock/nginx.lock
--user=www
--group=www
-- with-http_ssl_module
--with-http_stub_status_module
--with-http_gzip_static_module
--http -log-path=/var/log/nginx/access.log
--http-client-body-temp-path=/var/ tmp/nginx/client/
--http-proxy-temp-path=/var /tmp/nginx/proxy/
--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/
--http -uwsgi-temp-path=/var/tmp/nginx/uwsgi/
make
make install
5. Nginx konfigurieren
Code kopieren Der Code lautet wie folgt:
vim /opt/web/nginx/conf/ nginx.conf
# Geben Sie den Startbenutzer an:
user www www;
# Anzahl der Prozesse, glaubt der Autor von nginx. Nur einer, ändern Sie ihn entsprechend Ihrem eigenen Datenverkehr
worker_processes 1;
# Legen Sie das Fehlerprotokoll fest:
#error_log logs/error.log Notice;
#error_log logs/error.log info;
error_log /var/log/nginx/error .default.log;
pid /opt/web/nginx/nginx.pid;
events {
use epoll;
worker_connections 1024;
}
http {
charset utf-8;
include mime.types;
default_type application/ octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
# access_log logs/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip on;
gzip_min_length 1000;
gzip_proxied any;
gzip_types text/plain text/css text /xml
application/x-javascript application/xml
application/atom+xml text/javascript;
server {
listen 80;
server_name localhost;
charset utf-8;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
#error_page 404 /404.html;
# Serverfehlerseiten auf die statische Seite /50x.html umleiten
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# Proxy Die PHP-Skripte werden an den Apache übergeben, der 127.0.0.1:80 überwacht.
#
#location ~ .php$ {
# :9000
#
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php ;
#fastcgi_param script_filename /scripts$fastcgi_script_name;
#include fastcgi_params;
include. fastcgi .conf;
}
# Zugriff auf .htaccess-Dateien verweigern, wenn das Dokumentstammverzeichnis von Apache mit dem von Nginx übereinstimmt. und portbasierte Konfiguration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias;
# location / {
# root html;
# index index.html index .htm;
# }
#}
# https server
#
#server {
# listen 443;
# server_name localhost ;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols sslv2 sslv3 tlsv1;
# ssl_ciphers high:!anull :!md5;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
proxy_read_timeout 200;
# nur erneut versuchen, wenn ein Kommunikationsfehler aufgetreten ist, kein Timeout
# auf dem Tornado-Server (um die Weitergabe von „Queries of Death“ zu vermeiden
# an alle Frontends)
proxy_next_upstream error;
proxy_set_header x-scheme $scheme;
proxy_set_header x-real-ip $remote_addr;
proxy_set_header host $host;
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_ for ;
#Führen Sie die virtuelle Hostdatei ein
include /opt/web/nginx/conf/sites/ *.conf;
}
6. Erstellen Sie das Verzeichnis, in dem die Konfigurationsdatei der virtuellen Maschine gespeichert ist
Kopieren Sie den Code. Der Code lautet wie folgt:
mkdir / opt/web/nginx/conf/sites
Wenn Sie nach dieser Konfiguration einen neuen virtuellen Host hinzufügen müssen, fügen Sie die Konfigurationsdatei direkt zum Verzeichnis nginx/conf/sites/ hinzu.
Zum Beispiel: Jetzt haben Sie den Domänennamen www.jb51.net.
Erstellen: /opt/ web/nginx/conf/ Der Inhalt der Datei „sites/www.jb51.net.conf“
lautet wie folgt:
Kopieren Sie den Code. Der Code lautet wie folgt:
server {
listen 80;
client_max_body_size 10m;
#Mehrere Domänennamen werden durch Leerzeichen getrennt, der erste ist der Standardname
Servername www.jb51.net jb51.net;
charset utf-8;
index index.html index.htm index.php;
# Definieren Sie das Stammverzeichnis
set $root /var/webroot/www.jb51.net/;
# Legen Sie den Site-Pfad fest
root $root;
# Verhindern Sie das Durchsuchen von Verzeichnissen
autoindex off;
if ($host != 'www.jb51.net' ) {
rewrite ^/(.*)$ //www.jb51.net/ $1 permanent;
}
# Verhindern, dass .htaccess-Dateien angefordert werden
location ~ /.ht {
deny all;
}
error_page 404 / 404.html;
index index.html index.htm;
location /uploads/ {
alias /data/webroot/www.jb51.net/uploads/;
}
try_files $uri @uwsgi;
location @uwsgi{
# Andere Anfragen an uwsgi weiterleiten
include uwsgi_params;
uwsgi_pass unix:/tmp/360ito_uwsgi.sock;
proxy_set_header ed_for;
#proxy_pass http://localhost:5000;
}
# Anfragen vom Typ PHP weiterleiten Give fastcgi
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
# Zugriffsprotokoll:
access_log /var/log/nginx/access .www.jb51.net.log;
# Laden Sie die .htaccess-Rewrite-Datei. Beachten Sie, dass Variablenpfade hier nicht unterstützt werden.
# können nicht als include $ geschrieben werden root/www.jb51.net/.htaccess;
# include /var/webroot/ www.jb51.net/.htaccess;
# Domainnamensprung aktivieren. Wenn der Zugriffsfehler auftritt, springen andere Domainnamen automatisch zu www .jb51.net
# Beachten Sie, dass ich hier nur spreche, wenn ein Zugriffsfehler auftritt, sodass eine 301-Umleitung hier nicht implementiert werden kann!
server_name_in_redirect on;
}
7. Installieren Sie die neueste Version von PHP (php5.3.14)
Kopieren Sie den Code. Der Code lautet wie folgt:
cd /usr/local/src/
wget http://cn .php.net/get /php-5.3.14.tar.bz2/from/this/mirrortar xjvf php-5.3.14.tar.bz2
cd php-5.3.14
Ausführung:
Code kopieren Der Code lautet wie folgt:
. Wenn ein Fehler gemeldet wird, ist es möglich, dass Ihr Autoconf nicht Version 2.13 ist. Für Fehler der PHP5.3-Serie müssen Sie Autoconf-Version 2.13 installieren
Kopieren Sie den Code. Der Code lautet wie folgt:
centos: # yum install autoconf213
debian: # apt-get install autoconf2.13
Umgebungsvariablen festlegen
Code kopieren Der Code lautet wie folgt:
# centos :
export php_autoconf="/usr/bin/autoconf-2.13"
export php_autoconf="/usr/bin/autoconf2.13"
Erneut ausführen: ./buildconf --force Wenn buildconf: autoconf-Version 2.13 (ok)
erscheint, es bedeutet Erfolg.
Kompilieren und installieren Sie PHP
Kopieren Sie den Code. Der Code lautet wie folgt:
./configure
--prefix=/opt/web/php
-- with-config-file-scan-dir=/opt/web/php/etc/conf.d
--enable-fpm--with-fpm-user=www
--with-fpm- group=www
- -with-mysql=/opt/db/percona-server-5.5.14-rel20.5
--with-mysqli=/opt/db/percona-server-5.5.14-rel20.5/ bin/mysql_config
- -with-iconv-dir
--with-freetype-dir
--with-jpeg-dir
--with-png-dir
--with-zlib
--with-libxml-dir
--enable-xml
--enable-mbstring
--with-gd
--enable-gd-native-ttf
--with-openssl
--enable-inline-optimization
make && make install
cp php. ini-produktion /opt /web/php/etc/php.ini
cd /opt/web/php/etc
cp php-fpm.conf.default php-fpm.conf
Ändern Sie php-fpm.conf, um das zu aktivieren Folgende Zeilen, das heißt, entfernen Sie die vorhergehenden Zeilen Das Semikolon (;)
Code kopieren Der Code lautet wie folgt:
pid = run/php-fpm.pid
error_log = log/php-fpm.log
listen = 127.0.0.1:9000
listen erlaubte_clients = 127.0.0.1listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamisch
pm. max_children = 50
pm.start_servers = 5
pm. min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
env[hostname] = $hostname
env[path] = /usr/local/bin:/usr /bin:/bin
env[tmp] = / tmp
env[tmpdir] = /tmp
env[temp] = /tmp
8. Starten Sie php-fpm
Kopieren Sie den Code. Der Code lautet wie folgt:
/opt/web/php/sbin/php-fpm
Code kopieren Der Code lautet wie folgt:
/opt/web/nginx/sbin/nginx
Kopieren Code Der Code lautet wie folgt:
vim /var/webroot/www.jb51.net/tz .php
Code kopieren Der Code lautet wie folgt:
phpinfo() ;
?>10. Geben Sie in die Adressleiste des Browsers ein: http://php.jb51.net/tz.php
Bei Erfolg können Sie die von phpinfo() ausgegebenen Informationen sehen
Das obige ist der detaillierte Inhalt vonSo stellen Sie Nginx-, PHP- und virtuelle Hostkonfigurationen in einer CentOS-Umgebung bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

CakePHP ist ein Open-Source-MVC-Framework. Es erleichtert die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich. CakePHP verfügt über eine Reihe von Bibliotheken, um die Überlastung der häufigsten Aufgaben zu reduzieren.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet
