|
|
Publicado em 02/04/2019 11:47:27
|
|
|
|

O Nginx é um software de servidor leve e de alto desempenho, embora leve, mas muito poderoso, pode ser usado para fornecer serviços WEB, reverse proxy, balanceamento de carga, serviços de cache e até mesmo construir serviços de streaming RTMP adicionando alguns módulos. Recentemente, encontrei uma demanda de clientes e precisei usar o módulo de substituição de conteúdo web nginx; a seguir, está um registro do experimento relevante, publicado para comunicar com você; se houver alguma falha, por favor, aponte.
ngx_http_sub_module módulo é um filtro que modifica as strings no conteúdo de resposta do site. Este módulo já está integrado no nginx, mas não está instalado por padrão, e você precisa adicionar parâmetros de configuração para instalá-lo: --with-http_sub_module Se você já instalou o nginx, só precisa adicionar este módulo.
1. Instalação:
Pacote de download e instalação do site oficial da NGINX:O login do hiperlink está visível.
# wgetO login do hiperlink está visível.
# Piche -ZXVF nginx-1.11.5.tar.gz
# CD nginx-1.11.5
# ./configure --com-http_stub_status_module --com-http_sub_module && faça && faça instalação
2. Instruções comuns:
2.1 sub_filter Instruções: sub_filter substituição da corda (corda original) (corda a substituir);
Para definir a necessidade de substituir a string de descrição pela string de descrição. String é a string a ser substituída, substituição é a nova string, que pode conter variáveis.
2.2 sub_filter_last_modified Instrução: sub_filter_last_modified em | estranho;
Ele é usado para definir se modificar ou modificar a substituição na página web pode ser configurada nas três localizações http, servidor e localização no nginx.conf, e o valor padrão está desligado.
2.3 sub_filter_onceDiretiva: sub_filter_once em | estranho;
Usado para definir o número de substituições de cordas,Por padrão, ele é substituído apenas uma vez. Se estiver ativado, apenas o primeiro personagem combinado será substituído por padrão, e se estiver desligado, todos os personagens combinados serão substituídos;
2.4 sub_filter_types Instrução: sub_filter_types *
Usado para especificar o tipo MIME a ser substituído, o padrão é "texto/html"; se definido como *, então tudo;
Nota: O comando acima pode ser configurado em http, servidor e localização em nginx.conf.
3. Referência de exemplo de substituição dinâmica de conteúdo web por proxy reverso:
UpstreamO login do hiperlink está visível. {
servidor 118.184.180.46:80;
}
#反向代理, se você tem múltiplos IPs de servidor, também pode adicionar políticas como método de balanceamento de carga e peso #
server {
ouça 80;
#监听端口 #
server_nameO login do hiperlink está visível.;
#设置server nome #
Charset UTF-8;
#设置字符编码为utf-8, que pode ser ajustado conforme a situação real #
Localização / {
proxy_passO login do hiperlink está visível.$request_uri;
#反向代理规则 #
proxy_set_header Aceitação-Codificação desinfla;
#设置反向代理头部, às vezes o servidor de origem responde ao formato gzip, e haverá problemas ao substituí-lo, que podem ser resolvidos por esse item #
subs_filter '183.251.160.127' '123.181.128.17';
#替换指定ip, substitua aqui 183.251.160.127 por 123.181.128.17 #
subs_filter 'Província de Fujian Longyan City Mobile' 'Província de Hebei Tangshan City Telecom';
#替换城市. Informações do operador, este módulo de substituição do nginx suporta substituição chinesa #
subs_filter_types texto/html;
#指定被替换的MIME类型 #
sub_filter_once em diante;
#指定字符串替换次数, on significa substituir apenas o primeiro personagem combinado, e off significa substituir todos os caracteres combinados #
}
}
Ilustrar:
1. Este módulo não é sensível a maiúsculas e minúsculas;
2. Apoiar a substituição chinesa;
Configuração completa do Nginx.conf:
Captura de tela do efeito experimental:
Conclusão:
Outro módulo de substituição de conteúdo semelhante nginx_substitutions_filter, se você tiver interesse, pode experimentar e jogar.
Renderings:
Configurar código:
|
Anterior:A diferença entre o save JPA da primavera e o save AndFlushPróximo:Perguntas de TI na lista negra, internautas deram a notícia e compartilharam, apenas para referência
|