Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 24418|Yanıt: 1

[Web] Dinamik web içeriği değişimi uygulamak için Nginx Ters Proxy ve İçerik Değiştirme Modülünü kullanın

[Bağlantıyı kopyala]
Yayınlandı 2.04.2019 11:47:27 | | | |
Nginx, hafif ve yüksek performanslı bir sunucu yazılımıdır; hafif olmasına rağmen çok güçlüdür; WEB hizmetleri, ters proxy, yük dengeleme, önbellek hizmetleri sağlamak ve bazı modüller ekleyerek RTMP akış hizmetleri oluşturmak için kullanılabilir. Son zamanlarda bir müşteri talebi ile karşılaştım ve nginx web içerik değiştirme modülünü kullanmam gerekiyordu, aşağıda ilgili deneyin kaydı yer alıyor, sizinle iletişim için paylaşılıyor, herhangi bir eksiklik varsa lütfen belirtin.

ngx_http_sub_module modül, web sitesinin yanıt içeriğindeki dizileri değiştiren bir filtredir. Bu modül zaten nginx'e entegre edilmiştir, ancak varsayılan olarak kurulmamış ve kurulum için yapılandırma parametreleri eklemeniz gerekir: --with-http_sub_module nginx'i zaten yüklediyseniz, sadece bu modülü eklemeniz yeterlidir.

1. Kurulum:

nginx resmi web sitesi indirme ve kurulum paketi:Bağlantı girişi görünür.

# wgetBağlantı girişi görünür.

# katran -zxvf nginx-1.11.5.tar.gz

# CD nginx-1.11.5

# ./configure --with-http_stub_status_module --with-http_sub_module && make && install

2. Yaygın talimatlar:

2.1 sub_filter Talimatlar: sub_filter dize (orijinal diz) değişimi (değiştirilecek dze);

Açıklama dizesini açıklama dizisiyle değiştirilmesi gerektiğini ayarlamak için. Dizi değiştirilecek dize, yerine geçen yeni dize, içinde değişkenler olabilir.

2.2 sub_filter_last_modified Talimat: sub_filter_last_modified | Off;

Web sayfasındaki değişim yapısını ayarlamak için kullanılır; nginx.conf'ta http, sunucu ve konum olmak üzere üç konumda yapılandırılabilir, varsayılan değer kapalıdır.

2.3 sub_filter_onceDirektif: sub_filter_once | Off;

Tel değişim sayısını ayarlamak için kullanılır,Varsayılan olarak, sadece bir kez değiştirilir. Eğer açıksa, sadece ilk eşleştirilen karakter varsayılan olarak değiştirilir, kapalıysa tüm eşleşen karakterler değiştirilir

2.4 sub_filter_types Talimatlar: sub_filter_types *

Değiştirilecek MIME tipini belirtmek için kullanılır, varsayılan "text/html"dir, eğer * olarak ayarlanırsa, hepsi;

Not: Yukarıdaki komut, nginx.conf içinde http, sunucu ve konum içinde yapılandırılabilir.

3. Web içeriğinin ters proxy dinamik değişimi örnek referansı:

yukarı akışBağlantı girişi görünür. {

sunucu 118.184.180.46:80;

}

#反向代理, birden fazla sunucu IP'niz varsa, yük dengeleme yöntemi ve ağırlık gibi politikalar da ekleyebilirsiniz #

sunucu {

80 dinle;

#监听端口 #

server_nameBağlantı girişi görünür.;

#设置server adı #

charset UTF-8;

#设置字符编码为utf-8, bu durum gerçek duruma göre ayarlanabilir #

Konum / {

proxy_passBağlantı girişi görünür.$request_uri;

#反向代理规则 #

proxy_set_header Kabul Kodlama söndür;

#设置反向代理头部 bazen origin sunucusu gzip formatına yanıt verir ve değiştirirken sorunlar yaşanır, bu öğe ile çözülebilir #

subs_filter '183.251.160.127' '123.181.128.17';

#替换指定ip, burada 183.251.160.127'yi 123.181.128.17 ile değiştirin #

subs_filter 'Fujian Eyaleti Longyan City Mobile' 'Hebei Eyaleti Tangshan City Telecom';

#替换城市. Operatör bilgileri, bu nginx yedek modülü Çin yedek modülünü destekliyor #

subs_filter_types metin/html;

#指定被替换的MIME类型 #

sub_filter_once devam et;

#指定字符串替换次数, on sadece ilk eşleşen karakteri değiştirmek demek, off ise tüm eşleşen karakterleri değiştirmek anlamına gelir #

}

}

Göstermek:

1. Bu modül büyük harf duyarlı değildir;

2. Çin ikamesini desteklemek;

Nginx.conf tam yapılandırma:


Deneysel etkinin ekran görüntüsü:



Sonuç:

Benzer bir diğer içerik değiştirme modülü nginx_substitutions_filter, ilgileniyorsanız deneyip oynayabilirsiniz.



Render:



Kodu yapılandırmak:







Önceki:Spring JPA kaydı ile saveAndFlush arasındaki fark
Önümüzdeki:BT kara listesi sorgusu, internet kullanıcıları haberi verip sadece referans için paylaştı
Yayınlandı 2.08.2021 17:43:22 |
Paylaştığın için teşekkürler!
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com