Heim Betrieb und Instandhaltung Nginx So stellen Sie Nginx, PHP und einen virtuellen Host in einer CentOS-Umgebung bereit

So stellen Sie Nginx, PHP und einen virtuellen Host in einer CentOS-Umgebung bereit

May 13, 2023 pm 12:40 PM
php centos nginx

OS-Umgebung: Centos 6.1
nginx: nginx-1.2.2
php:php5.3.14
0, Abhängigkeitspaket 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 und 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. Konfigurieren Sie nginx

Kopieren Sie den Code. Der Code lautet wie folgt:

vim /opt/web/nginx/conf/nginx.conf
# Geben Sie den Start an Benutzer:
user www www;
# Die Anzahl der Prozesse, der Nginx-Autor ist der Meinung, dass einer entsprechend der Anzahl der Besuche ausreicht. Ändern Sie
worker_processes 1;
# Fehlerprotokoll festlegen:
#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 auf; 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 der PHP-Skripte an Apache, der auf 127.0 lauscht .0.1:80
#
#location ~ .php$ {
# Proxy_pass http://127.0.0.1;
#}
# übergeben Sie die PHP-Skripte an den Fastcgi-Server, der 127.0.0.1:9000 überwacht
#
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;
}
# deny access to. .htaccess Dateien, wenn das Dokumentenstammverzeichnis von Apache
# mit dem einzigen von Nginx übereinstimmt
#
Speicherort ~ /.ht {
alles verweigern;
}
}
# ein anderer virtueller Host mit einer Mischung aus IP-, Namens- und Port-basierter 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_ Protokolle sslv2 sslv3 tlsv1;
# ssl_ciphers high:!anull:!md5;
# ssl_prefer_server_hers on ;
# location / {
# root html;
# index index.html index.htm;
# }
#}
proxy_read_timeout 200;
# Versuchen Sie es nur erneut, wenn ein Kommunikationsfehler aufgetreten ist, kein Timeout
# auf dem Tornado-Server (um die Weitergabe von „Queries of Death“
# an alle Frontends zu vermeiden)
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;
# Virtuelle Hostdatei einführen
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/mirror

tar 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"

# debian:

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-path=/opt/web/php /etc

-- 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

log_level = bemerken

listen = 127.0.0.1:9000

listen erlaubte_clients = 127.0.0.1

listen.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

Nginx starten

Code kopieren Der Code lautet wie folgt:

/opt/web/nginx/sbin/nginx

9. Testen Sie es

Kopieren Code Der Code lautet wie folgt:

vim /var/webroot/www.jb51.net/tz .php

Eingeben und speichern

Code kopieren Der Code lautet wie folgt:

phpinfo() ;

?>

10. Geben Sie http://php.jb51.net/tz.php in die Adressleiste des Browsers ein. Bei Erfolg können Sie die von phpinfo() ausgegebenen Informationen sehen.

Das obige ist der detaillierte Inhalt vonSo stellen Sie Nginx, PHP und einen virtuellen Host in einer CentOS-Umgebung bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

CentOS -Konfiguration IP -Adresse CentOS -Konfiguration IP -Adresse Apr 14, 2025 pm 09:06 PM

Steps to configure IP address in CentOS: View the current network configuration: ip addr Edit the network configuration file: sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0 Change IP address: Edit IPADDR= Line changes the subnet mask and gateway (optional): Edit NETMASK= and GATEWAY= Lines Restart the network service: sudo systemctl restart network verification IP address: ip addr

So optimieren Sie die CentOS -HDFS -Konfiguration So optimieren Sie die CentOS -HDFS -Konfiguration Apr 14, 2025 pm 07:15 PM

Verbesserung der HDFS -Leistung bei CentOS: Ein umfassender Optimierungshandbuch zur Optimierung von HDFs (Hadoop Distributed Dateisystem) auf CentOS erfordert eine umfassende Berücksichtigung der Hardware-, Systemkonfigurations- und Netzwerkeinstellungen. Dieser Artikel enthält eine Reihe von Optimierungsstrategien, mit denen Sie die HDFS -Leistung verbessern können. 1. Hardware -Upgrade und Auswahlressourcenerweiterung: Erhöhen Sie die CPU-, Speicher- und Speicherkapazität des Servers so weit wie möglich. Hochleistungs-Hardware: Übernimmt Hochleistungs-Netzwerkkarten und -Schalter, um den Netzwerkdurchsatz zu verbessern. 2. Systemkonfiguration Fine-Tuning-Kernel-Parameteranpassung: Modify /etc/sysctl.conf Datei, um die Kernelparameter wie TCP-Verbindungsnummer, Dateihandelsnummer und Speicherverwaltung zu optimieren. Passen Sie beispielsweise den TCP -Verbindungsstatus und die Puffergröße an

Zweck von PHP: Erstellen dynamischer Websites Zweck von PHP: Erstellen dynamischer Websites Apr 15, 2025 am 12:18 AM

PHP wird verwendet, um dynamische Websites zu erstellen. Zu den Kernfunktionen gehören: 1. Dynamische Inhalte generieren und Webseiten in Echtzeit generieren, indem Sie eine Verbindung mit der Datenbank herstellen; 2. Verarbeiten Sie Benutzerinteraktions- und Formulareinreichungen, überprüfen Sie Eingaben und reagieren Sie auf Operationen. 3. Verwalten Sie Sitzungen und Benutzerauthentifizierung, um eine personalisierte Erfahrung zu bieten. 4. Optimieren Sie die Leistung und befolgen Sie die Best Practices, um die Effizienz und Sicherheit der Website zu verbessern.

Unterschied zwischen CentOS und Ubuntu Unterschied zwischen CentOS und Ubuntu Apr 14, 2025 pm 09:09 PM

Die wichtigsten Unterschiede zwischen CentOS und Ubuntu sind: Ursprung (CentOS stammt von Red Hat, für Unternehmen; Ubuntu stammt aus Debian, für Einzelpersonen), Packungsmanagement (CentOS verwendet yum, konzentriert sich auf Stabilität; Ubuntu verwendet apt, für hohe Aktualisierungsfrequenz), Support Cycle (Centos) (CENTOS bieten 10 Jahre. Tutorials und Dokumente), Verwendungen (CentOS ist auf Server voreingenommen, Ubuntu ist für Server und Desktops geeignet). Weitere Unterschiede sind die Einfachheit der Installation (CentOS ist dünn)

PHP: Datenbanken und serverseitige Logik bearbeiten PHP: Datenbanken und serverseitige Logik bearbeiten Apr 15, 2025 am 12:15 AM

PHP verwendet MySQLI- und PDO-Erweiterungen, um in Datenbankvorgängen und serverseitiger Logikverarbeitung zu interagieren und die serverseitige Logik durch Funktionen wie Sitzungsverwaltung zu verarbeiten. 1) Verwenden Sie MySQLI oder PDO, um eine Verbindung zur Datenbank herzustellen und SQL -Abfragen auszuführen. 2) Behandeln Sie HTTP -Anforderungen und Benutzerstatus über Sitzungsverwaltung und andere Funktionen. 3) Verwenden Sie Transaktionen, um die Atomizität von Datenbankvorgängen sicherzustellen. 4) Verhindern Sie die SQL -Injektion, verwenden Sie Ausnahmebehandlung und Schließen von Verbindungen zum Debuggen. 5) Optimieren Sie die Leistung durch Indexierung und Cache, schreiben Sie hochlesbarer Code und führen Sie die Fehlerbehandlung durch.

CentOS Shutdown -Befehlszeile CentOS Shutdown -Befehlszeile Apr 14, 2025 pm 09:12 PM

Der Befehl centOS stilldown wird heruntergefahren und die Syntax wird von [Optionen] ausgeführt [Informationen]. Zu den Optionen gehören: -h das System sofort stoppen; -P schalten Sie die Leistung nach dem Herunterfahren aus; -r neu starten; -t Wartezeit. Zeiten können als unmittelbar (jetzt), Minuten (Minuten) oder als bestimmte Zeit (HH: MM) angegeben werden. Hinzugefügten Informationen können in Systemmeldungen angezeigt werden.

PHP und Python: Code Beispiele und Vergleich PHP und Python: Code Beispiele und Vergleich Apr 15, 2025 am 12:07 AM

PHP und Python haben ihre eigenen Vor- und Nachteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1.PHP eignet sich für eine schnelle Entwicklung und Wartung großer Webanwendungen. 2. Python dominiert das Gebiet der Datenwissenschaft und des maschinellen Lernens.

CentOS HDFS Performance Tuning -Tipps CentOS HDFS Performance Tuning -Tipps Apr 14, 2025 pm 06:00 PM

CentOS-Plattform Hadoop Distributed File System (HDFS) Leistungsoptimierungshandbuch Die Optimierung der HDFS-Leistung ist ein facettenreiches Problem, und mehrere Parameter müssen für bestimmte Situationen angepasst werden. Im Folgenden finden Sie einige wichtige Optimierungsstrategien: 1. Die Speicherverwaltung passt die Konfiguration von Namenode und Datanode -Speicher an: Konfigurieren Sie vernünftigerweise die Umgebungsvariablen von Hadoop_Namenode_Opts und Hadoop_Datanode_Opts entsprechend der tatsächlichen Speichergröße des Servers, um die Speicherauslastung zu optimieren. Large Seitenspeicher aktivieren: Für Anwendungen mit hohem Speicherverbrauch (z. B. HDFs) kann das Aktivieren von großem Seitenspeicher die Speicherseite zu Allokation und das Management -Overhead reduzieren und die Effizienz verbessern. 2. Die I/A-Optimierung der Festplatte verwendet Hochgeschwindigkeitsspeicher

See all articles