我想使用 NGINx 作為反向代理伺服器,這樣我就可以從中國大陸打開我的 GAE(Google應用引擎)網站,因為大多數Google IP 都被 GFW 阻止了。
DNS:我有這些 DNS 記錄:-
A mydomain.com ==> x.x.x.x
CNAME www ==> ghs.google.com
CNAME * ==> ghs.google.com
我打算使用 geo DNS 指向我的反向代理,以防請求來自中國大陸,目前我正在透過讓主機將 mydomain.com 記錄點到本地主機進行本地測試。
我在 ubuntu 12.04 有 nginx 1.1.19。
我的網站設定檔是:-
server {
#listen 80;
listen 443 ssl;
server_name mydomain.com;
ssl on;
ssl_certificate /home/user/Desktop/ssl/mydomain.com.pem;
ssl_certificate_key /home/user/Desktop/ssl/mydomain.com.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
ssl_prefer_server_ciphers on;
large_client_header_buffers 4 16k;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
# keepalive_timeout 70;
location / {
proxy_pass https://mydomain.com/;
proxy_set_header Host www.mydomain.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-HOST $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Proxy-Hostname $scheme://$http_host;
proxy_redirect off;
proxy_intercept_errors on;
#error_page 500 = /error_page.html;
}
#location = /error_page.html {
# root /local_path_to_static_files_root;
#}
}
當我嘗試開啟 https://mydomain.com:-
我一開始就遇到了一些連接數太低的錯誤,透過在 nginx.conf 檔案中新增/編輯以下內容來解決它:-
events {
worker_connections 8024;
# multi_accept on;
}
然後我收到了太多開啟檔案錯誤,我透過在 nginx.conf 檔案中新增/編輯以下內容來解決它:-
worker_rlimit_nofile 5000;
現在我收到錯誤 504 網關逾時(連線逾時):-
知道我在做什麼或做錯了什麼嗎?
更新:
它變成了無限重定向循環,因為我mydomain.com ==> 127.0.0.1
在主機檔案和反向代理中將傳入的請求傳遞給mydomain.com,因此它不斷地請求自己,我刪除了將請求傳遞給主機的URL 代理以避免循環。
解決了
答案1
它變成了無限重定向循環,因為我mydomain.com ==> 127.0.0.1
在主機檔案和反向代理中將傳入的請求傳遞給mydomain.com,因此它不斷地請求自己,我刪除了將請求傳遞給主機的URL 代理以避免循環。