Farklı bir slayda göndermek için bir URL'yi yeniden yazmak istiyorum. İşte Nginx Proxy öncesi yeniden yazma
ilk Sunucu: Inupstream splunk {
server 127.0.0.1:8000;
}
upstream test{
server 127.0.0.1:88;
}
server {
listen 88;
root /var/www/errors/;
index index.html;
location ~* ^.+\.(jpeg|gif|png|jpg)
{
root /var/www/images/;
}
}
/var/www/hatalar /: 495.html 496.html 404.html
İştebenim proxy:
server {
listen 443 ssl spdy default_server;
error_page 404 @404;
error_page 495 @495;
error_page 495 @496;
location @404
{
rewrite^/404.html break;
proxy_pass http://test;
}
location @495
{
rewrite^/495.html break;
proxy_pass http://test;
}
location @496
{
rewrite^/496.html break;
proxy_pass http://test;
}
location/
{
if ($ssl_client_verify = NONE)
{
return 496;
}
if ($ssl_client_verify != SUCCESS) {
return 495;
}
proxy_pass http://splunk;
proxy_set_header X-Remote-User $username;
proxy_set_header X_Remote_User $username;
proxy_set_header X-SSL-Client-Serial $ssl_client_serial;
proxy_set_header X-SSL-Client-Verify $ssl_client_verify;
proxy_set_header X-SSL-Client-S-DN $ssl_client_s_dn;
proxy_set_header X-SSL-Client-S-DN-CN $username;
}
}
İlk sunucu iyi çalışıyor ve herhangi bir sorun olmadan index.html, 404.html vb. İkincisi, ilk sunucudaki uygun sayfaya göndermek için URI'yi yeniden yazmalıdır. Mevcut yapılandırmamla 400 Bad Request almaya devam ediyorum.
Şimdiden teşekkürler çok
DÜZENLEME: break
anahtar sözcüğü ile sayfalar düzgün yönlendirilir. Ne yazık ki, hedef sayfalardaki görüntüler (örnekler için 404.html) yüklenmez ve sunucu 400 Hatalı İstek gönderir. Bu vhost ile doğrudan bağlantı kurarken sayfayı doğru görebildiğim için (bu yüzden HTML doğrudur) bu garip.
EDIT2: İkinci sankondan Erişim günlükleri:
172.20.175.133 - - [19/Mar/2016:16:09:31 -0700] "GET/HTTP/1.1" 400 728 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"
172.20.175.133 - - [19/Mar/2016:16:09:32 -0700] "GET /logo.jpg HTTP/1.1" 400 728 "https://secondvhost.net/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"
172.20.175.133 - - [19/Mar/2016:16:09:32 -0700] "GET /images/logo.jpg HTTP/1.1" 400 728 "https://secondvhost.net/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"
172.20.175.133 - - [19/Mar/2016:16:09:32 -0700] "GET /var/www/images/logo.jpg HTTP/1.1" 400 728 "https://secondvhost.net/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"
172.20.175.133 - - [19/Mar/2016:16:09:32 -0700] "GET /favicon.ico HTTP/1.1" 400 728 "https://secondvhost.net/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"
ilk sankondan (açılış bir) hiçbir 400 yoktur.
'err' doesn ucunda aynı olmalıdır geçerli bir ana bilgisayar adı gibi görünmüyor. Hata günlükleriniz daha fazla bilgiye sahip olabilir. – Kyle
Test etmek için yeniden adlandırdım, yalnızca akış yönündeki sunucunun adı. Bu bölüm iyi çalışıyor, sadece doğru şekilde yüklenmemiş resimler. – Arkon
Bağlantı noktası 88'i dinlemektesiniz, ancak yukarı akış yapılandırmanızda – Kyle