32位windows下Nginx的简单使用及配置

    前几天工作中和前端部门的同学配合时遇到一个问题:前端同学调用服务器端接口时,服务器端接口获取不到cookie。项目是前后端分离,服务器端使用spring mvc提供java接口,前端使用nginx做反向代理解决跨域问题,前端框架使用vue。

    当时由于对ngix不太了解,只知道前端同学使用nginx做反向代理时,在测试环境配置的是ip+端口号的方式访问接口,于是就误以为是没有通过域名访问接口,所以服务器端接口才获取不到cookie。还理所当然的找前端同学“纠正错误”,经过一番排查,最终发现问题的罪魁祸首是vue,vue的工作原理是首页页面加载和刷新页面是会通过前端虚拟服务器和后端服务器接口交互,这时是服务器端之间的接口调用,前端同学没有在前端服务器向后端服务器接口正确的发送cookie,导致接口获取不到cookie。

    现在想想真的很汗颜,真是无知者无畏,所以就决定要学一学Nginx。这篇文章就记录一下我的一个入门实验,实验目的:在本机配置一个nginx反向代理服务器,监听8089端口。达到访问http://localhost:8089,会通过nginx代理,访问http://localhost:8080的目的。

    环境:32位windows、tomcat 、Spring MVC

    前期准备:安装tomcat,并新建Spring MVC项目,访问http://localhost:8080/,能够打开Sping MVC项目对应的action,具体做法这里不多说,详情请见我的博文:http://www.cnblogs.com/cs-js/p/7295414.html

    第一步:安装Nginx

下载链接:https://kevinworthington.com/nginx-for-windows/

我本机安装在了C:\nginx目录下,安装完成后,可以在文件夹里面看到Strat-nginx和Stop-nginx两个文件,一个是启动nginx服务,一个是关闭nginx服务。另外,还可以看到conf这个文件夹,ngix的配置文件nginx.conf就是放在这个文件夹里面。配置反向代理服务器只需要在配置文件里增加几个配置就可以了。

   第二步:配置nginx

打开nginx.conf配置文件,会看到在http节点,在http节点下有一个默认的server子节点,我们不用去管它,要做的就是在http节点下新增一个server节点,具体的配置如下:

 	#虚拟主机的配置
     server {
     	#监听端口
        listen       8090;
        #域名可以有多个,用空格隔开,代理访问的真实服务器
        server_name  localhost:8080;

        error_page  404              /404.html;
		
        charset utf-8;

        #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_set_header X-Forwarded-Server $host;

        #以下是一些反向代理的配置

        #反向代理时候,设置nginx将域名携带到tomcat服务器 
		proxy_set_header Host $host; 

		#允许客户端请求的最大单文件字节数
        client_max_body_size 10m;

		#对 "/" 启用反向代理 
        location / {
        	 #配置代理访问的真实uri
             proxy_pass http://localhost:8080;
        }
    }

这样,就配置了一个简单的反向代理服务器。是不是很简单,这里需要重点解释一下server节点和它里面的各个配置项的含义:

server:配置一个虚拟主机,一个server接口可以监听一个端口,nginx可以配置监听多个端口,做多个反向代理,每个反向代理都需要配置一个server节点。

listen:监听的端口,就是访问的nginx服务器的端口。

server_name:真实服务器的名称,可以配成ip+端口或者域名+端口

location:把不同方式的请求定位到不同的处理方式上,这里我配置的是“/”,意思就是配置成nginx对"/"这种请求做转发

proxy_pass:转发到真实服务器的uri。这里就是拦截http:localhost:8089/,然后转发到http://localhost:8080

 

总结,nginx的使用很简单,只需要简单的配置就可以完成高性能的反向代理和负载均衡功能,有兴趣的同学可以在网上深入研究一下,然后把好的资源共享一下,我的邮箱5915305@qq.com。

  

转载于:https://www.cnblogs.com/cs-js/p/7580956.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安全狗linux版是为Linux服务器开发的一款服务器管理软件,全面支持apache和nginx防护。具有DDOS攻击防护、CC攻击防护、Ftp/SSH防暴力破解、SSH远程登录保护、网站漏洞防护、url地址全检测、防盗链、网站特定资源保护、IP黑白名单等功能,全方位防护服务器安全和网站安全。 并支持云端设置。通过安全狗服云平台,可以对DDOS攻击防护、CC攻击防护等功能进行操作设置,无需通过linux系统操作,与传统的linux字符界面相比,Web界面更易懂更易操作。 安全狗linux版功能简介 1)CC攻击防护 CC攻击防护基本原理是防止一个IP多次不断刷新而断开与该IP的连接,防止服务器瘫痪,达到了防攻击目的。当有用户的访问违反了您设定的规则,服务器会阻止访问并返回您所设定的提示信息。 2)网站资源防盗链 本软件通过Reference技术和Session技术解决防盗链问题。Reference技术通常用于图片、mp3等资源这种容易被人用html嵌入到其他网站资源的资源。Session技术一般只用于论坛和社区网站。 3)网站特定资源防下载 网站特定资源保护通过对某些特定资源的设置来确保它们不被下载或盗用,您填写的路径(Path)和保护资源类型(Resource)中只要客户端的访问条件满足其中一种都会被拦截通过。 4)SQL防注入 根据攻击特征库,对用户输入进行过滤,从而达到防护SQL注入的目的。此功能中用户可以根据实际需要对过滤规则进行新增、修改、删除。 5)IP黑白名单 可自由设置允许或者不允许访问网站的IP列表,支持跨网段的IP设置。 6)防护日志 方便查找攻击来源,杜绝非法访问。 网站安全狗Linux-Nginx v2.4.2更新日志 新增HTTP头部字段检测、新增多个第三方模块支持,防护更全面! 1、新增HTTP头部全字段检测功能; 2、新增对lua-nginx-module-master模块支持; 3、新增对nginx_upstream_check_module-master 模块支持; 4、新增对nginx-backtrace-master 模块支持; 5、新增对ngx_http_accounting_module-master模块支持; 6、新增对3th_module/testcookie-nginx-module-master模块支持; 7、修复自动更新防护规则时,可能出的现规则无法自动加载问题; 8、修复特殊情况下,启用网马扫描功能出现进程卡死问题; 网站安全狗Linux-Nginx v2.4.2版更新日志 全面支持Nginx 1.10,后台防护功能优化 1. 全面支持Nginx 1.10版本。 2. 后台防护功能进一步优化。 3. 页面过滤默认关闭。 4. 解决网站安全狗(linux版)官方模板自动变更还原问题。 网站安全狗Linux-Nginx版截图
### 回答1: 在 Windows 下安装 nginx 比较简单,可以直接从官网下载安装包并进行安装。 1. 从 nginx 官网下载 Windows 版本的安装包(http://nginx.org/en/download.html) 2. 双击安装包并依次按照安装向导的提示进行安装。 3. 安装完成后,在命令行中输入 nginx,如果能看到“nginx 已成功启动”的提示,说明 nginx 安装成功。 配置 nginx: 1. 打开 nginx 安装目录下的 conf/nginx.conf 文件。 2. 修改配置文件中的相关配置,如服务器的地址、端口号等。 3. 保存配置文件。 4. 在命令行中输入 nginx -s reload,重新加载配置文件。 注意:具体配置内容因个人需求而异。 ### 回答2: WindowsNginx的安装和配置相对简单。下面是详细步骤: 1. 下载Nginx Windows版本的安装包,推荐到官网下载,地址为:http://nginx.org/en/download.html 2. 解压安装包,将解压后的文件夹重命名为nginx,并将其移动到C盘根目录。因为nginx默认会在C盘根目录寻找配置文件。 3. 进入nginx文件夹,打开conf目录下的nginx.conf文件,在开头添加如下代码,指定Nginx的运行目录: ```bash chdir c:/nginx/ ``` 4. 在nginx.conf文件中修改server块的配置,添加监听端口号和root目录,如下: ```bash server{ listen 80; server_name localhost; root html; index index.html index.htm; } ``` 这里的端口号可以根据实际需求修改,root目录则为Nginx的默认站点目录。 5. 启动nginx,在cmd命令行下输入: ```bash cd C:\nginx start nginx ``` 如果没有错误提示,则说明启动成功。 6. 在浏览器中输入localhost,如果看到Nginx的欢迎页面,则表示配置成功。 7. 关闭nginx,在cmd命令栏下输入: ```bash nginx -s stop ``` 注意:如果修改配置文件后需要重新启动Nginx,则输入: ```bash nginx -s reload ``` 总结:以上是WindowsNginx的安装和配置步骤,如果需要添加虚拟主机、负载均衡等功能,在nginx.conf文件中进行对应的配置即可。 ### 回答3: Nginx是一个高性能的HTTP和反向代理服务器。在Windows操作系统中,通过安装Nginx可以实现Web服务器的搭建以及各种代理和负载平衡操作。下面是WindowsNginx的安装和配置步骤。 一、下载Nginx 访问Nginx的官网,选择Windows版本的Nginx进行下载,下载后将文件解压到指定目录。 二、配置Nginx 1、进入到Nginx的目录中找到conf文件夹,这个文件夹中包含了Nginx配置文件。 2、打开nginx.conf文件,修改以下选项: 修改listen:将listen 80改为listen 8080,如果端口冲突,可以选择其他端口。 修改server_name:将server_name localhost改为server_name 你的域名,也可以使用IP地址。 修改root:将root html改为你的网站根目录。 3、将文件保存后,关闭文件。 三、启动Nginx服务 1、在cmd中进入到nginx.exe所在的文件夹中。 2、执行命令:nginx.exe -c conf/nginx.conf 提示nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions),说明80端口被占用,改成其他端口即可(如8080)。 3、打开浏览器,输入localhost:8080,就可以访问Nginx搭建的Web服务器了。 总结: 以上就是在Windows操作系统下Nginx的安装和配置步骤。需要注意的是,配置文件中的选项对应的含义需要认真了解并修改,否则可能会造成配置错误或安全隐患。在运行之前还应当检查一下端口是否被占用,并选择一个空闲的端口,才可以正常启动Nginx服务器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值