Um: Instalar
1. Acesse o site oficial para baixar o pacote nginx mais recente
2. Carregue o nginx no sistema linux
3. Instale o ambiente dependente
e execute ok sem cérebro
(1)安装gcc环境
yum install gcc-c++
(2)安装PCRE库,用于解析正则表达式
yum install -y pcre pcre-devel
(3)zlib压缩和解压缩依赖,
yum install -y zlib zlib-devel
(4)SSL 安全的加密的套接字协议层,用于HTTP安全传输,也就是https
yum install -y openssl openssl-devel
(5)解压,需要注意,解压后得到的是源码,源码需要编译后才能安装我解压到root下
tar -zxvf nginx-1.16.1.tar.gz
(6)编译之前,先创建nginx临时目录,如果不创建,在启动nginx的过程中会报错
mkdir /var/temp/nginx -p
(7)在nginx目录,输入如下命令进行配置,目的是为了创建makefile文件
./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
Explicação do comando –prefix
especifica o diretório de instalação do nginx
–pid-path aponta para o pid –lock-path do nginx
bloqueia o arquivo de instalação para evitar adulterações ou operações mal intencionadas
–log de erros do log de erros - log de erros do log de erros –log de
http do caminho do log de log
–with-http_gzip_static_module ativado módulo gzip, fluxo de dados de saída compactada em tempo real on-line -
http-client-body-temp-path define o diretório temporário solicitado pelo cliente -
http-proxy-temp-path define o diretório temporário do proxy
http - http-fastcgi-temp-path set Definir diretório temporário fastcgi -
http-uwsgi-temp-path definir diretório temporário uwsgi -
http-scgi-temp-path definir diretório temporário scgi
7.make编译
make
8. Instalação
#老鸟告诉你这样编译的话会快一点
make -j 4 install
9. Digite o diretório sbin para iniciar o nginx
./nginx
Stop: ./nginx -s stop
Recarregar: ./nginx -s reload
Abra o navegador, visite o ip da intranet onde a máquina virtual está localizada para abrir a página padrão do nginx, a seguir mostra a instalação com êxito:
Nota:
1. Instalação do servidor em nuvem O padrão é abrir a porta 80.
Se você precisar fechar o firewall ao instalar em uma máquina virtual
Segundo uso
Vamos inserir o arquivo conf para visualizar o arquivo principal do ngxin.conf e
entrar neste diretório
[root@huaxinfeng51 conf]# pwd
/usr/local/nginx/conf
Comando vim para modificar o arquivo de configuração
[root@huaxinfeng51 conf]# vim nginx.conf
1. O usuário que configura o processo de trabalho refere-se ao usuário no Linux, o que envolverá algumas permissões para o diretório ou arquivo de operação nginx. O padrão é ninguém. É a identidade que você usa para iniciar o nginx. Se eu começar com o root, você também poderá criar Usuário nginx concede permissões de usuário nginx
raiz do usuário;
2. O número de trabalhadores no processo de trabalho está definido.De um modo geral, existem várias CPUs, portanto, você pode definir algumas, ou configurá-las como N-1 ou automática, mas, de acordo com a experiência, escreva algumas CPUs.
worker_processes 1;
3.nginx depuração no nível do log | info | aviso | aviso | erro | crit | alerta | emergir, o nível de erro aumenta da esquerda para a direita
4. Defina o processo nginx pid
pid /usr/local/nginx/logs/nginx.pid;
#### Ao reiniciar o nginx, você provavelmente receberá um erro e não encontrará o pid. Nesse caso, você deve fazê-lo. Vá para
o diretório de instalação do nginx / sbin / e execute
nginx ou nginx -c nginx.conf em um local específico
nginx -c… / conf / nginx.conf
e reinicie
5. Defina o modo de trabalho
events {
# 默认使用epoll
use epoll;
# 每个worker允许连接的客户端最大连接数
worker_connections 10240;
}
6.http é o bloco de instruções, alguma configuração de instruções para transmissão de rede http
http {
}
7.include Introduzir configuração externa para melhorar a legibilidade, evitar que um único arquivo de configuração seja muito grande. Você pode ver esse arquivo no arquivo conf
include mime.types;
8. Defina o formato do log, main é um nome de formato personalizado, para que access_log possa usar essa variável diretamente
Os logs abaixo / var / log / nginx são a definição verde acima
Nome do parâmetro Parâmetro que significa
$ remote_addr Cliente ip
$ remote_user Nome de usuário do cliente remoto, geralmente: '-'
$ time_local Hora e fuso horário
$ request URL e método da solicitação
$ status $ status Código de status da resposta
$ body_bytes_send Bytes de conteúdo do cliente de resposta
$ http_referer registra o link do qual o usuário pulou para
$ http_user_agent O proxy usado pelo usuário geralmente
acessa o navegador $ http_x_forwarded_for através do servidor proxy para registrar o IP do cliente
9. O Sendfile usa transferência eficiente de arquivos para melhorar o desempenho da transferência. Tcp_nopush só pode ser usado depois de ativado, o que significa que é enviado somente após a tabela de dados acumular um determinado tamanho, o que melhora a eficiência
sendfile on;
tcp_nopush on;
10.keepalive_timeout define o tempo limite das solicitações de clientes e servidores para garantir que o cliente não estabeleça repetidamente uma nova conexão ao fazer várias solicitações, economizando o consumo de recursos.
#keepalive_timeout 0;
keepalive_timeout 65;
11. gzip ativa a compactação, a compactação html / js / css será mais rápida transmissão
gzip on;
#open gzip gzip_min_length 1; #less 1K não compacta
gzip_comp_level 3; #Compression é basicamente 3 O padrão é 1-9, mas quanto maior, melhor , Quanto maior o impacto no desempenho, CPU para calcular essa compactação
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/bmp application/x-bmp image/x-ms-bmp application/vnd.ms-fontobject font/ttf font/opentype font/x-woff;
#Compression type
12. O servidor pode configurar várias
escutas de host virtual na porta de escuta do bloco de comandos http
server_name server_name localhost, ip,
mapeamento de roteamento de solicitação de localização de nome de domínio , correspondendo a interceptação de configurações de home page do índice de
localização de solicitação de raiz
server {
listen 88;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
}