Nginx establece la protección del directorio, la cadena antirrobo, el límite de velocidad, el método de dominio múltiple

  

Nginx es un muy buen software de servidor HTTP, puede implementarse para lograr muchas funciones, como la protección del directorio, restricciones de acceso IP, cadena antirrobo, límite de velocidad de descarga Y configurar múltiples nombres de dominio y más.

I. Protección de directorio y restricciones de acceso a NGINX

La configuración del directorio de protección Nginx es la siguiente, el archivo de protección de contraseña de directorio es /usr /local /nginx /htpasswd

location ~ /admin {#admin es el nombre del directorio a proteger. Ubicación significa proteger el directorio admin auth_basic " POR FAVOR INICIE SESIÓN Y "; # es la información que se mostrará al ingresar a la carpeta auth_basic_user_file /usr /local /nginx /htpasswd # Files Archivos de usuario y contraseña, mi configuración aquí se coloca en /usr /local /nginx /htpasswd} ubicación ~ .php $ {fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var /www /Bbs $ fastcgi_script_name; include fastcgi_params;}

Tenga en cuenta que al configurar la protección de contraseña del directorio, preste atención a la ubicación del bloque de configuración. Si se coloca detrás del bloque de ubicación ~ .php $ {}, si es una página estática. O un archivo que no sea php, como una imagen, se le pedirá que ingrese una contraseña, pero si se abre el archivo php, la configuración no es válida, y el archivo php se ejecutará directamente y se mostrará. Por lo tanto, asegúrese de colocar el bloque en el que desea establecer la protección de contraseña del directorio antes del bloque de ubicación ~ .php $ {}.
Generar archivo de contraseña:

htpasswd -b -c /usr /locla /nginx /htpasswd contraseña de nombre de usuario;

Segundo, cadena antirrobo NGINX

Además, cadena antirrobo NGINX, para evitar que otros El robo de imágenes (video, flash, software y hellip;), por supuesto, está bien. También en la sección del servidor más

 
  1. ubicación ~ *.
    (Txt | Ico | Gif | Png | Bmp | Jpg | Jpeg | Cremallera Rar | Gz | 7z | Exe | Mp3 | Flv | Swf) $ {
  2. valid_referers ninguno bloqueado opsers.org www.opsers.org;
  3. if ($ invalid_referer) {
  4. reescribir ^ /
  5. }
  6. }

    este lugar el tiempo significa que la protección desde el directorio raíz del servidor web, contando todos los tipos de archivos se designan de acuerdo con esta regla
    valid_referers ninguno bloqueado, lo que significa que ningún Bloquear de dónde provenir ~ Aquí hay un espacio para separar el nombre de dominio permitido o la ubicación ip

    $ invalid_referer significa que el enlace no está permitido.

    reescribir ^ /significa especificar el enlace inadmisible para activar automáticamente Vaya a una página, o ya puede establecer la dirección 404, también puede descomentar esta línea y luego eliminar la anotación #return 404, se ejecutará automáticamente a la página 404 que establezca.

    Cómo ver si la cadena antirrobo es efectiva, se recomienda que mire directamente el registro de servicio, no lleve un sitio web para probar. Debido a algunos tipos descarados (como Baidu), usará su propio servidor de imágenes para proporcionar servicios. Es por esta razón que la última vez que estuve haciendo esto, perdí mucho tiempo.

    Tercero, límite de velocidad de descarga de NGINX

    ¡NGiNX también puede limitar el límite de velocidad de descarga! Primero, encuentre la zona_límite en la sección http, luego elimine los comentarios ~

     
    1. # Establezca una región llamada rastreador con un tamaño de 20MB
    2. limit_zone crawler $ binary_remote_addr 20m;
    3. Luego agregue
    4. #limit en la sección del servidor El tipo de archivo solo se puede descargar desde una sola línea
    5. ubicación ~. *.
      (Zip | Rar | Gz | Alquitrán Exe | Mp3 | Flv | Swf | Jpg | Jpeg) $ {
    6. limit_conn crawler 1;
    7. limit_rate 500k; # 再加 速速
    8. }
    9. # Limita las carpetas específicas debajo Descarga de una sola línea
    10. # location /download /{
    11. #limit_conn crawler 1;
    12. #limit_rate 500k; # 再加 速速
    13. #} < Br>

      IV. Configuración de varios dominios de NGINX

      Hay un problema grave al configurar PHP + Nginx hoy. El nombre de dominio genérico está vinculado al host virtual Nginx. En el programa, debe usar dos. Los nombres de dominio de nivel apuntan a un contenido diferente, ¡pero de todos modos solo acceden al nombre de dominio principal! Para encontrar el problema, una prueba, la siguiente conclusión: ¡no importa cuántos nombres de dominio estén vinculados, usando $ _SERVER [" SERVER_NAME "] solo devolverá el primer nombre de dominio enlazado en el host virtual!

      Por ejemplo, el nombre de dominio de enlace es el siguiente:

      nombre_servidor www.fxzc.com * .fxzc.com fxzc.com

      Ahora no me importa qué nombre de dominio uso, $ _SERVER [" SERVER_NAME "] solo volverá a www.fxzc.com! ! Este es un problema muy serio, que tiene un impacto fatal en los nombres de dominio de dominio.

      Dado que hay un problema, definitivamente hay una solución. . Después de que el maestro wiki dio vuelta a N durante mucho tiempo, ¡finalmente encontró la información necesaria! Resulta que el valor devuelto por $ _SERVER [" SERVER_NAME "] lo proporciona SERVER_NAME en fastcgi_param de Nginx, y la configuración predeterminada es:

       
      1. fastcgi_param SERVER_NAME $ server_name;
        < Br>

        La variable $ server_name en Nginx es el nombre de dominio establecido anteriormente, ¡solo el primero!

        Esto es fácil de hacer, cambie la configuración anterior a:

         
        1. fastcgi_param SERVER_NAME $ host;

          Muy bien.

          También es necesario agregar una línea después de la configuración del nombre del servidor:

           
          1. server_name_in_redirect off;

            significa que nginx está manejando sus propios redireccionamientos internos ¡El primer nombre de dominio en la configuración del nombre de servidor no se usa por defecto!

Copyright © Conocimiento de Windows All Rights Reserved