Nginx 代理配置

Posted 王子建

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx 代理配置相关的知识,希望对你有一定的参考价值。

nginx 正向http代理配置 需要用户名和密码认证

生成密码文件:

linux需要安装:
 #yum -y install httpd-tools
生成密码文件:
#htpasswd -c /usr/local/nginx/conf/pwd/passwd 用户名 输入密码 重新输入密码

 

server配置:

在conf的目录下创建hosts文件夹并在nginx.conf最后插入 include hosts/*.conf;

在hosts中创建文件myproxy.conf

server {
        access_log /usr/local/nginx/logs/access.log;#日志目录
        listen 39001;#监听端口
        location / {
                resolver 8.8.8.8;#DNS地址
                proxy_pass $scheme://$http_host$request_uri;
                auth_basic "Please input password";#提示
                auth_basic_user_file /usr/local/nginx/conf/pwd/passwd;#用户密码加密文件
                proxy_buffers   256 4k;#缓存大小
                proxy_max_temp_file_size 0k;
        }
}

 

命令:

nginx -s reload|reopen|stop|quit  #重新加载配置|重启|停止|退出nginx
nginx -t   #测试配置是否有语法错误

 

文件服务器配置:

进行简单配置
         在安装目录的conf文件夹下的nginx.conf中配置:
                  location ^~ /svn/ {    //表示含有svn/关键字就会进入以下规则
                     root /data/;
                     autoindex on;
                 }
         以上表示:http://[ip]/svn/ 实际访问路径为:/data/svn/;autoindex on表示打开目录浏览功能。当然nginx
      的规则配置还有很多,可以自行百度。
         


注意:location = / (精确匹配)与 location  /(模糊匹配)。后者表示请求地址只要含有/,就会给实际访问路径加上其规则里面配置的路径。比如:
         配置文件:
                   location  / {
                          root html
                          index  index.html index.htm;
                       }
                          
                   location ^~ /svn/ { 
                          root /data/;
                          autoindex on;
                 }
         那么请求“http://[ip]/svn/”则会先被“location  /”匹配,实际访问路径变成:/usr/local/nginx/html,然      后继续匹配发现满足svn关键字,故又加上/data/svn/,因此实际访问路径是/usr/local/nginx/html/data/svn/。
         另: location = / {
            root   html;
            index  index.html index.htm;
        }中的“root html”,表示当前安装目录下的html,“root /html”否则表示服务器根目录下的html。






























以上是关于Nginx 代理配置的主要内容,如果未能解决你的问题,请参考以下文章

Nginx专题:Nginx之反向代理及配置

nginx反向代理配置

Nginx简单的代理配置

Nginx配置websocket的反向代理

nginx的反向代理和配置

linux 安装 nginx 及反向代理配置