好久沒寫部落格了,在我遇到困難的時候,總是能從網路上找到一些大牛們寫的文章,解決我的問題。之前由於事情多,都是作為一個索取者,接下來有時間,我會盡量多寫些博客,把我遇到的問題的解決辦法,寫到博客上,分享給大家,作為回饋,也希望大家有時間都能夠把自己平常遇到的問題寫成博客,分享給更多的人,讓大家少走彎路。
這兩天在研究nginx的正向代理,想透過nginx搭建一個http代理伺服器,網站找到了這篇文章(http://www.cnblogs.com/inteliot/archive/2013/01/11/2855907 .html):
server { resolver 8.8.8.8; resolver_timeout 5s; listen 0.0.0.0:8080; access_log /home/reistlin/logs/proxy.access.log; error_log /home/reistlin/logs/proxy.error.log; location / { proxy_pass $scheme://$host$request_uri; proxy_set_header Host $http_host; proxy_buffers 256 4k; proxy_max_temp_file_size 0; proxy_connect_timeout 30; proxy_cache_valid 200 302 10m; proxy_cache_valid 301 1h; proxy_cache_valid any 1m;
<span>#allow 127.0.0.1; #deny all;</span>
<pre class="brush:php;toolbar:false"> } }
resolver 8.8.8.8; resolver_timeout 5s;
proxy_pass $scheme://$host$request_uri; proxy_set_header Host $http_host;
proxy_buffers 256 4k; proxy_max_temp_file_size 0; proxy_connect_timeout 30;
proxy_cache_valid 200 302 10m; proxy_cache_valid 301 1h; proxy_cache_valid any 1m;
"CONNECT www.google.com:443 HTTP/1.1" 400
作者寫的很棒,不過,我在設定過程中,遇到問題,就是透過設定的代理存取頁面都報404(我的nginx版本:1.2),後來發現需要改下proxy_pass:
proxy_pass $scheme://$host$request_uri;
proxy_pass $scheme://$http_host$request_uri;
這樣就可以了,另外我加上了ip的限制,大家有需要可以將上面的註解打開就行:
allow 127.0.0.1; deny all;
head info:{content-type=application/x-www-form-urlencoded; charset=UTF-8, c content-length=42, user-agent=Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (Windows NT 6.1; WOW64) AppleWebKit/537.36 ( KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36, proxy-c/pre><br> <p> 以上就介紹了nginx 設定匿名http正向代理,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。 </p> <p> </p>