Maison développement back-end tutoriel php Nginx服务器配置指令

Nginx服务器配置指令

Jul 30, 2016 pm 01:30 PM
header index proxy server

Nginx服务器配置指令:
Rewrite功能,代理功能

Rewrite功能

后端服务器组的配置指令

upstream指令

upstream指令是设置后端服务器组的主要指令

<code>upstream name {<span>...</span>} </code>
Copier après la connexion

请求按照轮叫调度(Round-Robin, RR)策略顺序选择服务器处理

server

server指令用于设置组内的服务器

<code>server address [<span>params</span>];</code>
Copier après la connexion
  • address:服务器地址,可以包括端口号或者以”unix:”为前缀的进程间通信的Unix Domain Socket
  • params:为当前服务器配置更多属性。
    weight=number,组内服务器权重,权重高的优先处理请求(采用加权轮询策略)
    max_fails=number,设置一个请求失败的次数,当对组内服务器请求失败次数超过该变量时,认为该服务器无效(404除外)
    fail_timeout=time,设置尝试请求某台组内服务器的时间,检查服务器是否有效
    backup,将服务器标记为备用服务器
    down,标记服务器永久失效

ip_hash指令

ip_hash指令用于实现会话保持功能,将某个客户端的多次请求定向到组内同一台服务器上,保证客户端与服务器之间建立稳定的会话。
注:ip_hash指令不能与weight变量一起使用,在整个系统中,Nginx服务器必须处于最前端的服务器,而且客户端地址必须为C类地址

keepalive指令

keepalive指令用于控制网络连接保持功能

<code>keepalive connections;</code>
Copier après la connexion

设置服务器的每一个工作进程允许该服务器组保持的空闲网络连接数的上限值

least_conn指令

least_conn指令用于配置Nginx服务器使用负载均衡策略为网络连接分配服务器组内的服务器,将请求分配给当前网络连接最少的服务器

Rewrite功能的配置指令

Rewrite功能的多种应用

代理功能

Nginx正向代理服务配置指令

resolver指令

resolver指令用于指定DNS服务器的IP地址

<code>resolver address <span>...</span> [valid=time];</code>
Copier après la connexion
  • address,DNS服务器的IP地址,默认端口35
  • time,设置数据包在网络中的有效时间

resolve_timeout指令

resolve_timeout指令用于设置DNS服务器域名解析超时时间

<code>resolve_timeout <span>time</span>;</code>
Copier après la connexion

proxy_pass指令

proxy_pass指令用于设置代理服务器的协议和地址

<code>proxy_pass <span>URL</span>;</code>
Copier après la connexion
Copier après la connexion

Nginx反向代理服务配置指令

proxy_pass指令

proxy_pass指令用来设置被代理服务器的地址,可以是主机名称、IP地址加端口号形式等

<code>proxy_pass <span>URL</span>;</code>
Copier après la connexion
Copier après la connexion

proxy_hide_header指令

proxy_hide_header指令用于设置Nginx服务器在发送HTTP响应时,隐藏一些头域信息

<code>proxy<span>\_</span>hide_header field</code>
Copier après la connexion
Copier après la connexion
Copier après la connexion

proxy_pass_header指令

proxy_pass_header指令用于设置那些头域信息被发送

<code>proxy<span>\_</span>hide_header field</code>
Copier après la connexion
Copier après la connexion
Copier après la connexion

proxy_pass_header指令

proxy_pass_header指令用于设置那些头域信息被发送

<code>proxy<span>\_</span>hide_header field</code>
Copier après la connexion
Copier après la connexion
Copier après la connexion

Nginx反向代理服务-负载均衡

一般轮询规则的负载均衡

<code><span>...</span>
upstream backend {
    server <span>192.168</span><span>.1</span><span>.2</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.3</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.4</span>:<span>80</span>;
}
server {
    listen <span>80</span>;
    server_name www.mysite.name;
    index index.html index.htm;
    location / {
        proxy_pass http://backend;
        proxy_set_header Host $host;
        <span>...</span>
    }
    <span>...</span>
}</code>
Copier après la connexion

加权轮询规则的负载均衡

<code><span>...</span>
upstream backend {
    server <span>192.168</span><span>.1</span><span>.2</span>:<span>80</span> weight=<span>5</span>;
    server <span>192.168</span><span>.1</span><span>.3</span>:<span>80</span> weight=<span>2</span>;
    server <span>192.168</span><span>.1</span><span>.4</span>:<span>80</span>;
}
server {
    listen <span>80</span>;
    server_name www.mysite.name;
    index index.html index.htm;
    location / {
        proxy_pass http://backend;
        proxy_set_header Host $host;
        <span>...</span>
    }
    <span>...</span>
}</code>
Copier après la connexion

特定资源的负载均衡

<code><span>...</span>
upstream videobackend {
    server <span>192.168</span><span>.1</span><span>.2</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.3</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.4</span>:<span>80</span>;
}
upstream filebackend {
    server <span>192.168</span><span>.1</span><span>.5</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.6</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.7</span>:<span>80</span>;
}
server {
    listen <span>80</span>;
    server_name www.mysite.name;
    index index.html index.htm;
    location /video/ {
        proxy_pass http://videobackend;
        proxy_set_header Host $host;
        <span>...</span>
    }
    location /file/ {
        proxy_pass http://filebackend;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        <span>...</span>
    }
    <span>...</span>
}</code>
Copier après la connexion

对不同域名实现负载均衡

<code><span>...</span>
upstream bbsbackend{
    server <span>192.168</span><span>.1</span><span>.2</span>:<span>80</span> weight=<span>2</span>;
    server <span>192.168</span><span>.1</span><span>.3</span>:<span>80</span> weight=<span>2</span>;
    server <span>192.168</span><span>.1</span><span>.4</span>:<span>80</span>;
}
upstream homebackend {
    server <span>192.168</span><span>.1</span><span>.4</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.5</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.6</span>:<span>80</span>;
}
server {
    listen <span>80</span>;
    server_name home.mysite.name;
    index index.html index.htm;
    location / {
        proxy_pass http://homebackend;
        proxy_set_header Host $host;
        <span>...</span>
    }
    <span>...</span>
}

server {
    listen <span>81</span>;
    server_name bbs.mysite.name;
    index index.html index.htm;
    location / {
        proxy_pass http://bbsbackend;
        proxy_set_header Host $host;
        <span>...</span>
    }
    <span>...</span>
}</code>
Copier après la connexion

带有URL重写的负载均衡

<code><span>...</span>
upstream backend{
    server <span>192.168</span><span>.1</span><span>.2</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.3</span>:<span>80</span>;
    server <span>192.168</span><span>.1</span><span>.4</span>:<span>80</span>;
}
server {
    listen <span>80</span>;
    server_name www.mysite.name;
    index index.html index.htm;
    location /file/ {
        rewrite ^(/file/.*)/media/(.*)\.*$ $<span>1</span>/mp3/$<span>2.</span>mp3 last;
    }

    location / {
        proxy_pass http://backend;
        proxy_set_header Host $host;
        <span>...</span>
    }
}</code>
Copier après la connexion

以上就介绍了Nginx服务器配置指令,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quel fichier est index.html ? Quel fichier est index.html ? Feb 19, 2024 pm 01:36 PM

index.html représente le fichier de la page d'accueil de la page Web et est la page par défaut du site Web. Lorsqu'un utilisateur visite un site Web, la page index.html est généralement chargée en premier. HTML (HypertextMarkupLanguage) est un langage de balisage utilisé pour créer des pages Web, et index.html est également un fichier HTML. Il contient la structure et le contenu d'une page Web, ainsi que les balises et les éléments utilisés pour le formatage et la mise en page. Voici un exemple de code index.html : &lt

Analyse et optimisation de la configuration de Nginx Proxy Manager Analyse et optimisation de la configuration de Nginx Proxy Manager Sep 26, 2023 am 09:24 AM

Présentation de l'analyse et de l'optimisation de la configuration de NginxProxyManager : NginxProxyManager est un outil de gestion de proxy inverse basé sur Nginx, qui peut nous aider à configurer et à gérer facilement des serveurs proxy inverse. Dans le processus d'utilisation de NginxProxyManager, nous pouvons améliorer les performances et la sécurité du serveur en analysant et en optimisant sa configuration. Analyse de la configuration : emplacement et structure du fichier de configuration : NginxProxyManag

Comment configurer et utiliser le protocole proxy dans nginx Comment configurer et utiliser le protocole proxy dans nginx May 18, 2023 am 08:47 AM

Lorsque le protocole proxy est utilisé dans nginx, nous savons que nginx est un serveur Web et un serveur proxy. Il fonctionne généralement derrière un serveur proxy ou un logiciel d'équilibrage de charge (Haproxy, Amazon Elastic LoadBalancer (ELB)). puis à nginx Effectuer un véritable accès au Web. Parce qu'il a traversé plusieurs couches de logiciel, certaines informations client telles que l'adresse IP, le numéro de port, etc. peuvent être masquées, ce qui est préjudiciable à notre analyse des problèmes et à nos statistiques de données, car pour nginx. , Nous voulons pouvoir avoir de vrais clients

Stratégies de déploiement de conteneurs et de microservices sous Nginx Proxy Manager Stratégies de déploiement de conteneurs et de microservices sous Nginx Proxy Manager Sep 27, 2023 pm 01:06 PM

La stratégie de déploiement de conteneurs et de microservices sous NginxProxyManager nécessite des exemples de code spécifiques. Résumé : Avec la popularité de l'architecture des microservices, la technologie de conteneurisation est devenue une partie importante du développement logiciel moderne. Dans l'architecture des microservices, NginxProxyManager joue un rôle très important, utilisé pour gérer et proxy le trafic des microservices. Cet article explique comment utiliser NginxProxyManager pour déployer et gérer des microservices conteneurisés et fournit des exemples de code pertinents.

Comment installer, désinstaller et réinitialiser la sauvegarde du serveur Windows Comment installer, désinstaller et réinitialiser la sauvegarde du serveur Windows Mar 06, 2024 am 10:37 AM

WindowsServerBackup est une fonction fournie avec le système d'exploitation WindowsServer, conçue pour aider les utilisateurs à protéger les données importantes et les configurations système, et à fournir des solutions complètes de sauvegarde et de récupération pour les petites, moyennes et grandes entreprises. Seuls les utilisateurs exécutant Server2022 et versions ultérieures peuvent utiliser cette fonctionnalité. Dans cet article, nous expliquerons comment installer, désinstaller ou réinitialiser WindowsServerBackup. Comment réinitialiser la sauvegarde de Windows Server Si vous rencontrez des problèmes avec la sauvegarde de votre serveur, si la sauvegarde prend trop de temps ou si vous ne parvenez pas à accéder aux fichiers stockés, vous pouvez envisager de réinitialiser vos paramètres de sauvegarde de Windows Server. Pour réinitialiser Windows

Comment utiliser Nginx Proxy Manager pour réaliser l'équilibrage de charge de plusieurs serveurs Comment utiliser Nginx Proxy Manager pour réaliser l'équilibrage de charge de plusieurs serveurs Sep 27, 2023 pm 09:42 PM

Comment utiliser NginxProxyManager pour réaliser l'équilibrage de charge de plusieurs serveurs. NginxProxyManager est un outil de gestion de serveur proxy développé sur la base de Nginx. Il fournit une interface Web simple et facile à utiliser qui peut facilement configurer et gérer les serveurs proxy Nginx. Dans les applications pratiques, nous devons souvent distribuer les requêtes sur plusieurs serveurs pour réaliser un équilibrage de charge et améliorer les performances et la disponibilité du système. Cet article expliquera comment utiliser NginxProx

Tutoriel Nginx Proxy Manager : Guide de démarrage rapide Tutoriel Nginx Proxy Manager : Guide de démarrage rapide Sep 27, 2023 pm 05:39 PM

Tutoriel NginxProxyManager : Guide de démarrage rapide, exemples de code spécifiques requis Introduction : Avec le développement de la technologie réseau, les serveurs proxy font désormais partie de notre utilisation quotidienne d'Internet. NginxProxyManager est une plateforme de gestion de serveur proxy basée sur Nginx, qui peut nous aider à établir et gérer rapidement des serveurs proxy. Cet article vous présentera le guide de démarrage rapide de NginxProxyManager, ainsi que quelques exemples de code spécifiques. un

Comment SpringBoot transmet-il les paramètres de l'en-tête via des appels Feign ? Comment SpringBoot transmet-il les paramètres de l'en-tête via des appels Feign ? May 16, 2023 pm 08:38 PM

[SpringBoot] Passage des paramètres dans l'en-tête via les appels Feign Comment transmettre les paramètres de l'en-tête via Feign Description du problème Lorsque nous utilisons Feign pour demander l'interface API d'un autre service dans Spring Cloud, il est nécessaire de transmettre les paramètres dans l'en-tête. un traitement spécial est effectué, les paramètres de l'en-tête seront perdus. Solution 1 : transmettez-le via @RequestHeader(name="headerName") Par exemple : Feign est défini comme suit @FeignClient(name="service-name")pub.

See all articles