


So richten Sie einen Hochleistungs-WEB-Server mit Linux+Nginx+Php ein
nginx („Engine x“) ist ein leistungsstarker HTTP- und Reverse-Proxy-Server sowie ein IMAP/Pop3/SMTP-Proxy-Server. Nginx wurde von Igor Sysoev für Rambler.ru entwickelt, die am zweithäufigsten besuchte Website in Russland, wo es seit über zweieinhalb Jahren aktiv ist. igor veröffentlicht den Quellcode unter einer BSD-ähnlichen Lizenz. Obwohl sich Nginx noch in der Betaphase befindet, ist es bereits für seine Stabilität, seinen umfangreichen Funktionsumfang, Beispielkonfigurationsdateien und seinen geringen Systemressourcenverbrauch bekannt.
Installationsschritte
1. Kompilieren und installieren Sie die für PHP5.2.9 erforderlichen Unterstützungsbibliotheken
tar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure --prefix=/usr/local
make
make install
cd ../
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
/sbin/ldconfig
cd libltdl/
. /configure --enable-ltdl-install
make
make install
cd ../../
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd ../
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/ libmcrypt .so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/ lib /libmcrypt.so.4.4.8
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/ libmhash .la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so. 2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6. 8 /
/sbin/ldconfig
./configure
make
make install
cd ../
2. Kompilieren und installieren Sie die MySQL 5.1.34-Erweiterungsbibliothek
/usr/sbin/groupadd mysql
/usr /sbin/ useradd -g mysql mysql
tar zxvf mysql-5.1.34.tar.gz
cd mysql-5.1.34/
./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with -extra-charsets=complex --enable-thread-safe-client --with-big-tables --with-readline --with-ssl --with-embedded-server --enable-local-infile - -with- Plugins=innobase
make && make install
chmod +w /usr/local/webserver/mysql
chown -r mysql:mysql /usr/local/webserver/mysql
cd ../
Die MySQL-Installation wird hier weggelassen
3. PHP kompilieren und installieren (Fastcgi-Modus)
tar zxvf php-5.2.9.tar.gz
gzip -cd php-5.2.9-fpm-0.5.10.diff.gz |. d php -5.2.9 -p1
cd php-5.2.9/
./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php /etc --with-mysql=/usr/local/webserver/mysql --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with- freetype- dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path - -enable -safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi -- enable- fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable- pcntl - -enable-sockets --with-ldap --with-ldap-sasl
make zend_extra_libs='-liconv'
make install
cp php.ini-dist /usr/local/webserver/php/etc/php.ini
cd ../
4. Ändern Sie die PHP-FPM-Konfigurationsdatei
rm -f /usr/local/webserver/php/etc/php-fpm.conf
vi /usr/local/webserver/php /etc/ php-fpm.conf
Geben Sie den folgenden Inhalt ein:
< value name="display_errors">1
< value name="slowlog">logs/slow.log
< value name="max_requests">500
section>
五、创建www用户组及www用户
/usr/sbin/groupadd www
/usr/sbin/useradd -g www www
六、编译安装nginx
tar zxvf nginx-0.6.35.tar.gz
cd nginx-0.6.35/
默认安装:
./configure
make && make install
默认情况下, nginx 会被安装在 /usr/local/nginx www --prefix=/usr /local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module
cd ../
七、创建fcgi.conf文件
rm -f /usr/local/webserver/nginx /conf/fcgi.confvi /usr/local/webserver/nginx/conf/fcgi.conf
输入以下内容:
fastcgi_param Gateway_interface cgi/1.1;
fastcgi_param server_software nginx;
fastcgi_param query_string $query_string;
fastcgi_param request_method $request_method;
fastcgi_param content_type $content_type;
fastcgi_param content_length $content_length;
fastcgi_param script_filename $document_root$fastcgi_script_name;
fastcgi_param script_name $ fastcgi_script_name;
fastcgi_param request_uri $request_uri;
fastcgi_param document_uri $document_uri;
fastcgi_param document_root $document_root;
fastcgi_param server_protocol $server_protocol;
fastcgi_param remote_addr $remote_addr;
fastcgi_ param remote_port $remote_port;
fastcgi_param server_addr $server_addr;
fastcgi_param server_port $server_port ;
fastcgi_param server_name $server_name;
# Nur PHP, erforderlich, wenn PHP mit --enable-force-cgi-redirect erstellt wurde
rm -f / usr/local/webserver/nginx/conf/nginx.conf
输入以下内容:user www www;
error_log /usr/ local/webserver/nginx/logs/logs/nginx_error.log crit;
pid /usr/local/webserver/nginx/logs/nginx.pid;
events {
use epoll;worker_connections 51200;
}
http {
include mime.types;
default_type application/octet-stream;
charset utf-8;
server_names_hash_bucket_size 128;
large_client_header_buffers 4 32k;
client_ max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 8 64k;
fastcgi_busy_buffers_size 128k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
#limit_zone crawler $binary_remote_addr 10m;
#多个站点设置,站点文件夹必须放在nginx的html目录,否则不支持多站点
server {
listen 80;
server_name www.v-ec.com;
root /usr/local/webserver/nginx/html/www.v-ec.com ;
location ~ .*.(php|php5)?$ {
#fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index .php;
include fcgi.conf;
}
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
}
location ~ .*.(js|css )?$ {
expires 6h;
}
log_format veclog '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
access_log logs/vec.log veclog;
}
#多个站点设置,站点文件夹必须放在nginx的html目录,否则不支持多站点
listen 80;
Servername www.w3cgroup.com;
root /usr/local/webserver/nginx/html/www.w3cgroup.com;
index index.php index.html;
location ~ .*.(php|php5)?$ {
#fastcgi_pass unix:/tmp/ php-cgi.sock;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
}
location ~ .*.(js|css)?$ {
expires 6h;
}
log_format w3cclog '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
access_log logs/w3c.log w3clog;
}
}
九、配置开机自动启动nginx + php
vi /etc/rc .local
十、优化linux内核参数
vi /etc/sysctl.conf
在末尾增加以下内容: net.ipv4.tcp_fin_timeout =. 30net.ipv4.tcp_kee palive_time = 300
net.ipv4.tcp_syncookies = 1net .ipv4.tcp_tw_reuse = 1.net.ipv4.tcp_tw_recycle = 1重启linux了,不出意外的话应该可以顺利开启nginx
ps aux | grep nginx找到nginx的master-Prozess, 5800, 然后killkill –hup 5800
平滑重启php
/usr/local/webserver/php/sbin/php-fpm restart
php-fpm的其他命令:start | aufhören | beenden | neu starten | neu laden | logrotate
Das obige ist der detaillierte Inhalt vonSo richten Sie einen Hochleistungs-WEB-Server mit Linux+Nginx+Php ein. 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



Die Hauptgründe, warum Sie sich bei MySQL nicht als Root anmelden können, sind Berechtigungsprobleme, Konfigurationsdateifehler, Kennwort inkonsistent, Socket -Dateiprobleme oder Firewall -Interception. Die Lösung umfasst: Überprüfen Sie, ob der Parameter Bind-Address in der Konfigurationsdatei korrekt konfiguriert ist. Überprüfen Sie, ob die Root -Benutzerberechtigungen geändert oder gelöscht und zurückgesetzt wurden. Stellen Sie sicher, dass das Passwort korrekt ist, einschließlich Fall- und Sonderzeichen. Überprüfen Sie die Einstellungen und Pfade der Socket -Dateiberechtigte. Überprüfen Sie, ob die Firewall Verbindungen zum MySQL -Server blockiert.

MySQL kann nicht direkt auf Android ausgeführt werden, kann jedoch indirekt mit den folgenden Methoden implementiert werden: Die Verwendung der Leichtgewichtsdatenbank SQLite, die auf dem Android -System basiert, benötigt keinen separaten Server und verfügt über eine kleine Ressourcennutzung, die für Anwendungen für Mobilgeräte sehr geeignet ist. Stellen Sie sich remote eine Verbindung zum MySQL -Server her und stellen Sie über das Netzwerk zum Lesen und Schreiben von Daten über das Netzwerk eine Verbindung zur MySQL -Datenbank auf dem Remote -Server her. Es gibt jedoch Nachteile wie starke Netzwerkabhängigkeiten, Sicherheitsprobleme und Serverkosten.

Zu den häufig gestellten Fragen und Antworten auf das CentOS -Interview gehören: 1.. Verwenden Sie den Befehl yum oder dnf, um Softwarepakete wie Sudoyumininstallnginx zu installieren. 2. Verwalten Sie Benutzer und Gruppen über UserAdd- und GroupAdd-Befehle wie Sudouseradd-S/bin/bashnewuser. 3.. Verwenden Sie Firewalld, um die Firewall wie Sudofirewall-CMD-Permanent-Add-Service = http zu konfigurieren. 4. Setzen Sie automatische Updates für die Verwendung von Yum-Cron, z.

Möglicherweise kann der Zugang zu MySQL vom Terminal nicht zugreifen: MySQL -Dienst, der nicht ausgeführt wird; Verbindungsbefehlsfehler; unzureichende Berechtigungen; Firewall blockiert die Verbindung; MySQL -Konfigurationsdateifehler.

Linux wird häufig in Servern, eingebetteten Systemen und Desktopumgebungen verwendet. 1) Im Serverfeld ist Linux aufgrund seiner Stabilität und Sicherheit eine ideale Wahl für das Hosting von Websites, Datenbanken und Anwendungen geworden. 2) In eingebetteten Systemen ist Linux für seine hohe Anpassung und Effizienz beliebt. 3) In der Desktop -Umgebung bietet Linux eine Vielzahl von Desktop -Umgebungen, um den Anforderungen verschiedener Benutzer gerecht zu werden.

Die Zukunft von PHP wird erreicht, indem sich an neue Technologietrends angepasst und innovative Funktionen eingeführt werden: 1) Anpassung an Cloud Computing, Containerisierung und Microservice -Architekturen, Unterstützung von Docker und Kubernetes; 2) Einführung von JIT -Compilern und Aufzählungsarten zur Verbesserung der Leistung und der Datenverarbeitungseffizienz; 3) die Leistung kontinuierlich optimieren und Best Practices fördern.

PHP und Python haben jeweils ihre eigenen Vorteile, und die Wahl sollte auf Projektanforderungen beruhen. 1.PHP eignet sich für die Webentwicklung mit einfacher Syntax und hoher Ausführungseffizienz. 2. Python eignet sich für Datenwissenschaft und maschinelles Lernen mit präziser Syntax und reichhaltigen Bibliotheken.

PHP stirbt nicht, sondern sich ständig anpasst und weiterentwickelt. 1) PHP hat seit 1994 mehreren Versionen für die Version unterzogen, um sich an neue Technologietrends anzupassen. 2) Es wird derzeit in E-Commerce, Content-Management-Systemen und anderen Bereichen häufig verwendet. 3) PHP8 führt den JIT -Compiler und andere Funktionen ein, um die Leistung und Modernisierung zu verbessern. 4) Verwenden Sie Opcache und befolgen Sie die PSR-12-Standards, um die Leistung und die Codequalität zu optimieren.
