1-- servidor Nginx] [Alto Rendimiento - 3 Instalación Nginx

0 Equilibrio de carga

El balanceo de carga, basado en la arquitectura de red existente, se proporciona un método barato y eficaz y transparente 扩展网络设备, y 服务器的带宽, 增加吞吐量, 加强网络数据处理能力, 提高网络的灵活性和可用性.

El balanceo de carga, el nombre de Inglés para Load Balancesu significado es evaluado para ser ejecutado en múltiples unidades operativas, tales como servidores web, servidores FTP, servidores de aplicaciones críticas de negocio y otros servidores de misión crítica, con el fin de trabajar juntos para completar la tarea.

1 Nginx

Nginx es un servidor proxy HTTP del servidor de alto rendimiento / servidor proxy inverso y el correo electrónico (IMAP / POP3). El programa desarrollado por el diseñador ruso Igor Sysoev, el nginx oficial de pruebas 能够 支撑 5 万并发链接, y cpu, 内存etc 资源消耗却非常低, 运行非常稳定.

China continental utilizar usuarios del sitio web nginx son: Sina, Netease, Tencent y así sucesivamente.

Nginx es una 轻量级和高性能的 Web 服务器y 反向代理服务器que ha tenido una gran cantidad de características muy superiores:

  1. 作为 Web 服务器: En comparación con Apache, Nginx usar menos recursos para soportar conexiones concurrentes más, lo que refleja una mayor eficiencia, especialmente en este punto la web Nginx proveedor de alojamiento de bienvenida. En respuesta capaz de soportar hasta 50.000 conexiones simultáneas, gracias a Nginx elegimos epoll y kqueue como modelo de desarrollo para nosotros.
  2. 作为负载均衡服务器: Nginx o bien apoyan directamente Rails y PHP internamente, también puede apoyar como un servidor proxy HTTP en el servicio exterior. Nginx está escrito en C, independientemente de la eficiencia en el consumo de recursos del sistema o CPU es mucho mejor que Perlbal.
  3. 作为邮件代理服务器: Nginx es también un servidor proxy de correo muy bueno (uno de los primeros finalidad es el desarrollo de este producto como un servidor proxy de correo), Last.fm describe una experiencia exitosa y maravillosa.

instalación Nginx es un archivo muy simple, muy simple de configuración (también es compatible con la sintaxis de Perl), insectos muy poco servidor: inicia Nginx son particularmente vulnerables, y se puede hacer casi 7 * 24 de funcionamiento ininterrumpido, aunque unos pocos meses no tienen que correr de nuevo comenzar. También puede hacer 不间断服务的情况下进行软件版本的升级.

Nginx siete equilibrio general de la carga de usuarios, el rendimiento de ciertas restricciones.
Para aumentar el rendimiento global será presentado entre el DNS y Nginx LVS (software equilibrador de carga), el F5 (equilibrador de carga duro) pueden hacer cuatro balanceo de carga, la resolución de DNS es el primero en LVS (F5), y LVS (F5 ) remitido a Nginx, y luego enviado al servidor real Nginx.

2 WindowsInstalaciónNginx

Página oficial: http://nginx.org/

1, Descargas:
Aquí Insertar imagen Descripción

2. Descomprimir el archivo descargado:
Aquí Insertar imagen Descripción

3, de inicio:

  • Método 1: Haga doble clic en:nginx.exe
  • Segunda manera: PS E:\dev\nginx-1.16.1> start nginx
    Aquí Insertar imagen Descripción
    Si se inicia Nginx tiene éxito, el registro de errores no debe ser contenido, de lo contrario habrá mensaje de error:
    Aquí Insertar imagen Descripción

4, parada

./nginx.exe -s stop

3 MACInstalaciónNginx

3.1 Herramientas de instalación

homebrew (no se utiliza pequeños amigos pueden señalar enlace o para averiguar acerca de sus propias Baidu)

paso 3.2

1, abrir el terminal, introduzca el comando:

brew update

Aquí Insertar imagen Descripción

2, el terminal continúa ejecutando el comando:查询要安装的软件是否存在

brew search nginx

Aquí Insertar imagen Descripción

3, donde llevamos a cabo varios pasos "pérdida" de comandos, pero nos ayudará la siguiente configuración:

brew info nginx

El resultado:

Aquí Insertar imagen Descripción

Podemos ver, nginxque no se ha instalado localmente ( Not installed), nginxfuente ( From), Docrootde manera predeterminada /usr/local/var/www, el /usr/local/etc/nginx/nginx.confpuerto por defecto se configura como el archivo de configuración de 8080modo que nginxno requiere tiempo de ejecución adicional sudo, nginxse /usr/local/etc/nginx/servers/cargar todos los archivos en un directorio, y podemos el comando simple " nginxpara comenzar nginx.

4, se inició la instalación:

brew install nginx

Aquí Insertar imagen Descripción

5, ver el directorio de instalación de Nginx (como si dicha información):

open /usr/local/etc/nginx/

Aquí Insertar imagen Descripción

Éxito abierto nginxdirectorio también se puede ver como infose ha mencionado servers目录, y nginx.conflos archivos de configuración (se utilizará más adelante en el archivo de configuración). Pero no hemos encontrado nginxpara ser instalado en el.

Terminal sigue:其实这个才是nginx被安装到的目录

open /usr/local/Cellar/nginx

Aquí Insertar imagen Descripción

Para ver una instalada actualmente nginxnúmero de versión para el nombre del archivo de la carpeta, esto es lo que instalamos nginxla raíz del asunto. Introduzca el 1.17.1/bindirectorio, verá nginxel inicio archivos ejecutables.

Del mismo modo, en 1.17.1/el directorio también podemos ver el nombre de la htmlcarpeta de acceso directo (por el momento, por lo que llamó), introduzca el directorio vamos a descubrir que está apuntando a /usr/local/var/wwwla guía, nos vemos en la anterior infoinformación, se hace mención a Dcroot()

6, comienza nginx, el comando siguiente terminal de entrada:

nginx

No hay error es el inicio con éxito.

7, la autenticación de acceso:

Si la pantalla normal:
Aquí Insertar imagen Descripción

Los siguientes son excepciones:

Abrir un navegador para el acceso localhost:8080, aquí con algunos tutoriales en línea será algo diferente, en circunstancias normales, este paso será capaz de ver nginxla pantalla de bienvenida, pero los bloggers se han encontrado con el padre situación foso (si normalmente puede ver la nginxpantalla de bienvenida puede omitir este paso).

Aquí Insertar imagen Descripción

Sin duda, todo el mundo está familiarizado con este error, no voy a hacer más para explicar, a continuación, dirigir esa razón (la razón es sólo una especulación, porque no hay manera de verificar): instalado nginxpor defecto en html(que es /usr/local/var/www) guía para generar un archivo de página de bienvenida , la aparición de esta situación está por encima del archivo de página de bienvenida no se genera (de por qué hay generación no se conoce, todo es especulación).

Antes de que solucionan este problema, primer vistazo a nginxla barra de perfil ( nginx.conf):

cat /usr/local/etc/nginx/nginx.conf

Código muestra el archivo de configuración es:

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    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;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
     #侦听8080端口
        listen       8080;
     #定义使用 localhost访问
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
       #定义服务器的默认网站根目录位置
            root   html;
        #定义首页索引文件的名称
            index  index.html index.htm;
        }
     ...
     ...
     ... (注释代码太多,就不全部贴出来了)

    include servers/*;
}

Por perfiles, podemos ver que el directorio raíz web por defecto html(que es /usr/local/var/www), y el archivo de índice predeterminado index.htmly index.htm, en este para encontrar la causa, y que estábamos menos la raíz de los archivos de índice de Interior, a continuación, crear manualmente una que:

cd /usr/local/var/www/                      //进入到www目录下
touch index.html                            //创建一个新的index.html文件
vim index.html                              //编辑该文件 

El código siguiente se escribe index.htmlarchivo:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>title</title>
</head>
<body>
    <div>
        <h1>我的nginx欢迎页面</h1>
    </div>
</body>
</html>

Pulse el escbotón para entrar en :wqel lanzamiento editar y guardar (esto creo que lo hará, pero aún así escribir en el trastorno obsesivo-compulsivo).

De vuelta al navegador ( localhost:8080) Actualizar:

Aquí Insertar imagen Descripción

4 LinuxInstalaciónNginx

Página oficial: http://nginx.org/

4.1 Preparación del Medio Ambiente

CentOS7 Desactivar el firewall:

systemctl stop firewalld # 临时关闭
systemctl disable firewalld # 禁止开机启动

1. Instalar gcc gcc-c++

yum install -y gcc gcc-c++

2. Instalar wget

yum -y install wget

3. Instalar la PCREbiblioteca

yum install -y pcre pcre-devel

5. Instalar SSLla biblioteca

yum install -y openssl openssl-devel

6. Instalación de zlibInventario

yum install -y zlib zlib-devel

4.2 Instalación Nginx

cd /usr/local/
wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
cd nginx-1.16.1
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
make && make install

Nota: recopilado nginxen /usr/local/nginx/la siguiente

[root@docker nginx-1.16.1]# cd /usr/local/nginx/
[root@docker nginx]# ll
total 4
drwxr-xr-x. 2 root root 4096 Dec  7 23:59 conf       # 配置文件
drwxr-xr-x. 2 root root   40 Dec  7 23:59 html       # 根目录欢迎页
drwxr-xr-x. 2 root root   19 Dec  7 23:59 sbin       # nginx 启动命令
[root@docker nginx]# 

4.3 inicio Nginx

cd /usr/local/nginx/sbin/
./nginx
[root@docker ~]# cd /usr/local/nginx/sbin/
[root@docker sbin]# ./nginx 
nginx: [emerg] mkdir() "/var/temp/nginx/client" failed (2: No such file or directory)
[root@docker sbin]# 

Nota: Antes de comenzar nginx, en la parte superior del directorio de archivos temporales se especifica /var/temp/nginx, es necesario /varen virtud de la creación tempy el nginxdirectorio

[root@localhost sbin]# mkdir /var/temp/nginx/client -p

iniciar nginx:

./nginx

Ver proceso:

ps aux | grep nginx
[root@docker sbin]# ps aux | grep nginx
root       4382  0.0  0.0  20556   616 ?        Ss   00:06   0:00 nginx: master process ./nginx
nobody     4383  0.0  0.0  21008  1344 ?        S    00:06   0:00 nginx: worker process
root       4386  0.0  0.0 112708   976 pts/0    S+   00:07   0:00 grep --color=auto nginx
[root@docker sbin]# 
  • ps aux: Ver todos los procesos
  • grep nginx: Filtrado de nginx

Cerrar manera de matar el proceso nginx

kill -9 4382

Cerrar nginx:
[root @ localhost sbin] # ./nginx -s PARADA

Modo de empleo:

[root@localhost sbin]# ./nginx -s quit

Reiniciar nginx:

1, después de cerrar la primera apertura;
2, actualizar el archivo de configuración:

./nginx -s reload
[root@localhost sbin]# ./nginx -s reload

acceso nginx

Aquí Insertar imagen Descripción
El valor por defecto es de 80 puertos.

** Nota: ** si desea apagar el servidor de seguridad.

5 Nginxescenarios

1HTTP 服务器 . Nginx es un servicio http http puede proporcionar servicios de forma independiente. Usted puede hacer un servidor de páginas web estáticas.

2虚拟主机 . Se puede lograr un múltiples sitios virtuales en un único servidor, como el sitio web personal a través de una máquina virtual.

3反向代理,负载均衡 . Cuando el tráfico del sitio alcanza un cierto nivel, un único servidor no puede satisfacer la petición del usuario, la necesidad de utilizar varios servidores de grupos se pueden utilizar para hacer nginx proxy inverso. Circunstancias y varios servidores pueden compartir el promedio de carga, la carga no debe ser alto tiempo de inactividad para un servidor y un servidor inactivo.

4, nginx también se puede configurar 安全管理, por ejemplo, se puede utilizar para construir Nginx gateway interfaz API para interceptar cada uno servicios de interfaz.

6 NginxEstructura de directorios

Nginx-
|_  conf   配置目录
|_  contrib
|_  docs 文档目录
|_  logs  日志目录
|_  temp 临时文件目录
|_  html 静态页面目录
|_  nginx.exe 主程序

7 Nginxrecursos estáticos

El acceso a los recursos almacenados en la página HTML estática nginx

Publicados 675 artículos originales · ganado elogios 214 · Vistas de 140.000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_42112635/article/details/104920599
Recomendado
Clasificación