Maison > Article > Opération et maintenance > Comment installer et configurer le serveur HTTP nginx
Serveur http
Étant donné que Tomcat traite les ressources statiques lentement, la première chose qui vient à l'esprit est de séparer toutes les ressources statiques (js, css, image, swf)
Lorsqu'il s'agit d'un serveur séparé, utilisez un serveur http plus rapide, choisissez ici Utilisez maintenant nginx. Comparé à Apache, nginx est plus léger et plus simple à configurer. De plus, nginx n'est pas seulement un serveur http hautes performances, mais aussi un serveur proxy inverse hautes performances.
Actuellement, de nombreux grands sites Web utilisent nginx. Sina, NetEase, QQ, etc. utilisent tous nginx, ce qui montre que la stabilité et les performances de nginx sont toujours très bonnes.
1. Installation de nginx (linux)Téléchargez la dernière version stable
Téléchargez d'abord le modèle correspondant en fonction des fonctions dont vous avez besoin. Voici les modules suivants :
openssl-0.9.8l, zlib-1.2.3, pcre-. 8h00
Compilez et installez nginx:
./configure
--without-http_rewrite_module
--with-http_ssl_module
--with-openssl=../../lib/openssl-0.9.8l
--with-zlib= .. /../lib/zlib-1.2.3
--with-pcre=../../lib/pcre-8.00
--prefix=/usr/local/nginx
make
make install
2 , nginx Configuration du traitement des ressources statiques#Démarrer la compression gzip css et js
gzip activé;
# Niveau de compression 1-9, la valeur par défaut est 1, plus le niveau est élevé, plus le taux de compression est élevé, bien sûr, plus le temps de compression
gzip_comp_level 4;
# Type de compression
gzip_types text/css application/x-javascript;
# Définir le service d'accès aux ressources statiques, le nom de domaine correspondant : res.abc.com
server {
listen 80;
server_name res.abc.com;
# Activer Le serveur lit le cache de fichiers,
open_file_cache max=200 inactive=2h;
open_file_cache_valid 3h;
open_file_cache_errors off;
charset utf-8; le client est mis en cache pendant 5 jours
emplacement ~* ^. +.(ico|gif|bmp|jpg|jpeg|png|swf)$ {
root /usr/local/resource/;
access_log off;
index index.html index.htm;
expire 5j;
}
# En raison des changements fréquents de js et css, le client est mis en cache pendant 8 heures
emplacement ~* ^.+.(js|css)$ {
root /usr/local/resource/ ;
access_log off;
index index.html index.htm ;
expire 8h;
}
# Autres ressources statiques
location / {
root /usr/local/resource;
access_log off;
expire 8h;
}
}
3. Paramètres du proxy inverse nginx
# Reverse Pour servir le proxy, liez le nom de domaine www.abc.comserver {
listen 80;
server_name www.abc.com;
charset utf-8;
# bbs utilise discuz !
# Étant donné que le proxy inverse est utilisé pour améliorer les performances, une partie des informations d'en-tête http ne sera pas transmise au serveur backend
# Utilisez proxy_pass_header et proxy_set_header pour transmettre les informations d'en-tête http nécessaires au serveur backend
emplacement ^. ~ /bbs/ {
root html;
access_log off;
index index.php;
# Transférer les informations de l'hôte si l'hôte n'est pas défini, le nom de domaine obtenu en utilisant request.getservername() en arrière-plan n'est pas www. .abc.com, mais 127.0.0.1
proxy_set_header host $host;
# À cause de Discuz, c'est sûr. Vous devez obtenir l'agent utilisateur client pour déterminer si chaque donnée de publication provient du même navigateur que la première requête.
# Si vous ne transférez pas l'agent utilisateur, discutez ! Soumettez les données et il signalera l'erreur "L'origine de votre demande" Incorrecte, impossible de soumettre"
proxy_pass_header user-agent;
proxy_pass http://127.0.0.1 :8081;
}
# Les autres demandes sont transmises à tomcat
location/{
root html;
access_log off;
index index .jsp;
proxy_pass http://127.0.0.1:8080;
}
error_page 500 502 503 504 /50x.html;
emplacement = /50x.html {
racine html;
}
}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!