nginx作为windows服务运行
如何把Nginx安装成Windows服务
如何把Nginx安装成Windows服务
可以使用 .NET Framework加 winsw-1.9-bin.exe 来实现把 Nginx安装到Windows服务器管理器中。
.NET Framework下载地址
WinSW-1.9-bin下载地址
把NGINX安装到C:\RUNTIME\nginx目录。
平时的启动命令为:
C:\RUNTIME\nginx\nginx.exe
停止它有两种方法,一种是打开进程管理器,把所有的nginx进程都杀死,而且看着它们都被杀死为止才行。
一种是用命令行:
C:\RUNTIME\nginx\nginx.exe -s stop
要自动启动,你可以把winsw-1.9-bin.exe复制到C:\RUNTIME\nginx目录,改名为NginxServer.exe。
保存后,执行命令:
NginxServer.exe install
如果成功,就会返回命令行光标,没有提示。
如果有错误提示,请确认你的电脑正确安装了.NET Framework 2.0.5或以上的环境。
卸载命令为:
NginxServer.exe uninstall
现在服务的起停,你可以打开“服务器管理器”来操作了。
windows nginx rewrite 语法-概述说明以及解释
windows nginx rewrite 语法-概述说明以及解释1.引言1.1 概述概述在当今互联网时代,Web服务器扮演着至关重要的角色,而Nginx作为一款高性能的Web服务器和反向代理服务器,在实际应用中被广泛采用。
本文将围绕Windows环境下的Nginx Rewrite语法展开讨论。
Nginx Rewrite语法是一个非常重要的功能,通过它可以实现URL重写和重定向,从而帮助网站管理员更好地管理网站的URL结构和优化SEO。
在Windows环境下,如何正确地应用Nginx Rewrite语法,不仅涉及着网站的性能和用户体验,还关系着网站的搜索引擎排名和流量。
通过本文的深入解析,读者将能够全面了解Windows环境下Nginx Rewrite语法的基本概念和应用技巧,从而更好地优化自己的网站,并提升网站在搜索引擎中的排名。
1.2 文章结构文章结构部分将主要包括以下内容:1. 引言部分:- 概述: 对Windows环境下Nginx Rewrite语法进行简要介绍,引出文章主题。
- 文章结构: 说明本文的组织结构和内容安排,为读者提供阅读指引。
- 目的: 阐明本文的写作目的和意义,强调Windows环境下Nginx Rewrite语法的重要性。
2. 正文部分:- 什么是Windows环境下的Nginx: 介绍Nginx在Windows 环境下的基本概念和特点,为后续内容做铺垫。
- Rewrite语法的基本概念: 解释Rewrite语法的基本含义,讲解其在Nginx中的作用和用法。
- Windows环境下Nginx Rewrite语法的应用: 探讨在Windows 环境下如何使用Rewrite语法进行URL重写等操作,示例说明其实际应用场景。
3. 结论部分:- 总结Windows环境下Nginx Rewrite语法的重要性: 总结Rewrite语法在Windows环境下的作用和价值,强调其在网站优化和SEO 方面的重要性。
Windows系统上使用Nginx作为支持https协议访问的文件服务器
在Windows系统上使用Nginx作为支持https协议的文件服务器一、介绍最近在做手机App开发时,有一个需求是App升级开发,即当App启动时,连接后台服务,向服务器发送请求,服务器根据App当前版本、应用名称及使用平台(Android、ios)返回升级的相关信息,当需要升级时会返回升级文件下载地址及升级文件名称等,App再发送https请求到文件服务器获取升级文件。
在这个过程中,升级文件就是通过对Nginx的访问获取到的。
Nginx是一个轻量级的Web服务器,有很好的性能,功能上常常用来做反向代理、负载平衡服务器,具有安装配置简单灵活、高性能、高并发等特点,微服务体系下,一般用来做网关使用,下面的图片就是最终效果图,接下来将详细介绍Nginx支持https协议访问并充当文件服务器的具体配置操作步骤二、下载Nginx➢下载Nginx版本访问Nginx官网,从官网上找到合适的版本进行下载,这里我下载的版本是windows系统下使用的1.18.0版本➢解压安装对下载的Nginx-1.18.0.zip压缩包进行解压,解压内容如下三、Https证书及密钥生成https证书获取方式一、通过java jdk中自带的keytool工具生成二、通过openssl生成三、ca认证机构颁发(可用于外网)keytool无法导出密钥文件,只能通过代码方式生成或者openssl生成3.1 OpenSSL工具生成3.1.1 下载openssl3.1.2 安装openssl为了能够使用到openssl命令生成密钥和证书,安装成功后需要通过cmd进入openssl安装目录下的bin文件夹(如果配置了bin文件夹的路径为环境变量path就不需要进入目录下再操作了)➢生成密钥key文件通过cmd进入openssl安装目录下的bin文件夹,输入命令Openssl genrsa -des3 -out nginx.key,输入密码和验证密码12345678回车(密码可另设)nginx.key为密钥文件名称,也可以使用其它命名,同时可以使用绝对路径,这里直接使用了文件名,此时文件会在openssl安装目录下的bin文件夹下生成➢创建csr证书输入命令openssl req -new -key nginx.key -out nginx.csr➢去除密码复制nginx.key为nginx.key.cp,输入命令openssl rsa -in nginx.key.cp -out nginx.key,输入密码12345678,回车➢生成证书文件nginx.crtopenssl x509 -req -days 365 -in nginx.csr -signkey nginx.key -out nginx.crt四、Nginx配置➢nginx.conf配置在nginx安装目录的conf文件夹下找到nginx.conf文件进行配置,可以发现该文件中有一段被注释的HTTPS server用于支持https访问可以在Nginx官网链接上查找到Nginx如何支持HTTPS配置基于官网配置可改配置如下在Nginx安装目录下新建文件夹cert(证书文件夹)和upgradefile(升级文件夹),将openssl 生成的证书文件nginx.crt和密钥文件nginx.key放入cert文件夹,将需要使用的文件资源放入upgradefile文件夹将原Nginx.conf文件配置改为# HTTPS server#server {listen 8009 ssl;server_name localhost;ssl_certificate ../cert/nginx.crt;ssl_certificate_key ../cert/nginx.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;location / {root upgradefile;autoindex on;}}五、访问➢双击nginx.exe启动nginx服务,nginx服务启动出现问题可在logs目录下查看error.log日志➢在浏览器输入https://localhost:8009即可查看放置在upgradefile目录下的文件列表。
windows10系统配置nginx文件服务器的图文教程
windows10系统配置nginx⽂件服务器的图⽂教程Nginx官⽹下载Windows版本的Nginx:将下载的软件包进⾏解压:注意:解压包的路径不能包含中⽂字符,否则Nginx服务启动不了启动Nginx服务:“Windows键+R键"打开运⾏,输⼊"cmd"进⼊"Dos终端”C:\Users\Administrator>f:F:\>cd GX\nginx-1.16.1# 启动命令F:\GX\nginx-1.16.1>start nginxF:\GX\nginx-1.16.1>服务启动成功后,在任务管理器中会有两个"nginx"进程修改配置⽂件,重启Nginx在"nginx.conf"⽂件"HTTPS server块"上⽅新增以下⼏⾏# 添加⽂件管理器# 显⽰⽬录autoindex on;# 显⽰⽂件⼤⼩autoindex_exact_size on;# 显⽰⽂件时间autoindex_localtime on;server {listen 8888;server_name localhost ;# 本地⽂件路径# 注意不能直接以整个逻辑磁盘F:\ 为⽬录路径,要F:\英⽂⽬录名root F:\GX\Chiron ;}重新加载Nginx服务# 重新加载Nginx服务命令F:\GX\nginx-1.16.1>nginx.exe -s reloadF:\GX\nginx-1.16.1>注意:1. ⽬录名与⽂件名要求使⽤英⽂字符才能正常下载;2. 带有中⽂字符的⽂件可能会显⽰乱码,并且下载时,可能会报"500 Internal Server Error"错误Windows 版本的Nginx相关命令:nginx -s stop //停⽌nginxnginx -s reload //重新加载nginxnginx -s quit //退出nginxstart nginx //启动nginx设置PC机开机⾃启动C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup将“nginx.exe”⽣成快捷⽅式到上⾯⽬录下即可总结以上所述是⼩编给⼤家介绍的windows10 系统配置nginx⽂件服务器,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。
windows下一分钟配置ngnix实现HLSm3u8点播
windows下一分钟配置ngnix实现HLSm3u8点播一、首先保证nginx能正常运行:这个就是因为前面我们把nginx的目录加到了Path中,然而nginx启动时各种路径都是以当前工作目录为起始点的,这就导致了系统去“C:\Users\[UserName]/conf/nginx.conf”这个地方去寻找配置文件而不是正常的“D:\nginx-1.3.9/conf/nginx.conf”。
看来不能轻易偷懒啊。
这个问题在CentOS下同样存在,但是linux下可以直接对service nginx,所以对当前工作目录并无要求。
Windows 下当然也可以把nginx注册成服务,懒得麻烦了,以后用到再说。
二、正常运行后配置hls的信息1. 下载nginx-1.7.11 for windows 可以直接从nginx官网上下载2. 新建子目录:nginx-1.5.10\html\hls,把生成的m3u8和切片好的ts文件或目录拷贝到hls目录下3. 打开任务管理其,杀掉ngnix.exe,重启ngnix.exe4. 打开vlc播放器, 【打开网络串流】菜单,输入url:http://192.168.1.100/hls/playlist.m3u8 即可测试播放了,在你的ipad上,也可以播放啦,简单吧!!三、利用ffmepg把ts文件转m3u8并切片网上很多垃圾文章推荐segmenter工具,但用的时候,3.5G的ts 文件丢了一半的数据,于是想到了ffmpeg转。
在国外网站找到命令,一句话搞定,没报半句错: ffmpeg -i 12生肖.ts -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 10 output%03d.ts 顺便共享给各位国内的同仁,免得深受其苦。
毕竟,大家都说HLS代表future,rtsp已经是过去式了。
window下nginx配置
原来一直以为nginx只能在Linux下搭建,最近查了些资料才恍然大悟,Windows下其实也可以跑nginx。
当你的网站访问量越来越高的时候,一台服务器已经没有办法承受流量压力,后果可想而知,怎么办呢?那就增加几台服务器来做负载吧。
但当下的硬件设施又是贵得离谱,比如F5,所以这种情况下,免费的nginx成了我们不错的选择,nginx目前好多门户网站与大访问量的网站都在使用做为HTTP服务器,所以nginx是相当优秀的……实验环境:(2台服务器)第一台:系统:Win2003nginx:nginx/Windows-0.8.32IP:192.168.0.51环境:本地第二台:系统:Win2003IP:192.168.0.52环境:远程说明:本次测试,软件nginx放在本地(192.168.0.51),也就是说放在域名绑定的那台服务器,这台服务器的IIS不能使用80端口,因为等一下nginx软件要使用80这个端口。
(为了方便,我将本机的hosts文件添加了我要测试的域名192.168.0.51 )下载nginx的地址如下:nginx下载:/下载解压到C:\,把目录名改成nginx一切准备就绪,开始实验:No.1:在本地(192.168.0.51)这台服务器IIS创建一个网站,使用端口为808,如下图:IIS 网站绑定设置图No.2:在远程192.168.0.52的IIS创建一个网站,使用端口为80,如下图:No.3:好了,以上已经设置好两台服务器的IIS了,下面配置nginx软件来实现网站负载均衡,打开如下文件:C:\nginx\conf\nginx.conf1、找到内容server {在它的上面加入如下内容:upstream {server 192.168.0.51:808;server 192.168.0.52:80;}(这是负载切换使用的服务器网站IP)2、找到location / {root html;index index.html index.htm;}把内容更改如下:location / {proxy_pass ;proxy_redirect default;}3、找到server {listen 80;server_name localhost;把内容改成如下:server {listen 80;server_name 192.168.0.51;(这是监听访问域名绑定那台服务器80端口的请求)好,在这里就这么简单配置好了,下面看下以上3步配置的图:负载配置图No.4:都配置好了,下面启动nginx这软件进入命令提示符CMD,进入c:\nginx>,输入nginx命令,如下图:启动nginx这时候,系统进程有两个nginx.exe进程,如下图:系统nginx进程(停止nginx运行输入nginx -s stop 即可)No.5:经过以上的配置,现在我们看下负载效果:在本地(192.168.0.51)这服务器打开IE,输入:http://192.168.0.51第一次打开网站的结果:第一次访问网站图刷新一下网页,出现的结果:再次访问网站图OK,测试成功o(∩_∩)o经过这次测试,可见网站的负载平衡并不是难事。
Windows环境下的Nginx高并发实现
Software Development •软件开发Electronic Technology & Software Engineering 电子技术与软件工程• 47【关键词】Windows 服务器 Nginx 反向代理 高并发1 引言Nginx 是高性能的Http 和反向代理服务器,在Linux 环境下,其可以采用epoll 作为网络I/O 模型。
在高并发连接的情况下,其是Apache 服务器不错的替代品。
Nginx 具有高并Windows 环境下的Nginx 高并发实现文/岳晋 温宇 黄旻亮发连接、内存占用低、成本低等特点。
Nginx 运行时,会存在一个主进程和多个工作进程。
工作进程的数目可以在配置文件中进行指定,通常设置为CPU 的核数。
主进程用于管理工作进程的运行,并处置工作进程的异常情况。
借助于主进程和工作进程的模式,Nginx 可以实现平滑升级、配置即时生效等功能。
而工作进程的任务相对单一,主要用于处理业务请求,它们彼此独立,互不影响。
此外,借助于异步非阻塞的工作机制,Nginx 可以处理上万的并发请求。
反向代理是Nginx 的主要应用场景之一。
反向代理是相对于正向代理来说,一般情况下,内网的客户机通过代理服务器访问公网上服务的这种模式是正向代理。
与此相反,当代理服务器的作用是将后台服务器隐藏起来,并根据客户机的请求,分发给后台服务器的这种方式是反向代理。
Nginx 反向代理的原理如图1所示。
图1中,Nginx 代理服务器接收到来自客户端的请求,根据自己的配置,决定将该请求转发给哪个业务服务器。
当业务服务器处理完该请求后,将响应结果交给Nginx 代理服务器,Nginx 代理服务器再将响应内容返回给客户机。
反向代理可以保护后端服务器,此外,还可以用作负载均衡,来平衡后端服务器的性能压力。
Nginx 通过proxy_pass 命令和upstream 模块,就可以实现反向代理。
Nginx 在windows下配置iis搭建负载均衡过程
Nginx 在windows下配合iis搭建负载均衡过程本着学习的目的,自己也亲自去体验了一下nginx在window下的安装过程,并配合iis搭建一个负载均衡的过程,环境如下:解释一下,因为我自己就一台计算机,为了演示效果,所以安装了虚拟机。
计算机A :本计算机上安装Nginx同时也会配置IIS,为了不和Nginx的80端口冲突,务必要修改端口号,跟虚拟机B配合,相当于2台服务器,来做负载均衡虚拟机B:模拟一台服务器,建立IIS,端口号使用80端口。
下面来说一下安装过程已经用到的资源虚拟机资源:迅雷下载地址:/software1/VMwareworkstation-v9.0.1.zipVM使用指南资料:/blog/static/1267734512010714103659611/Windows镜像资源:/os/windows/Win2003/1904.htmlNginx资源:中文nginx:/apidocs/apidoc?api=nginx-zh安装Nginx1.下载好后,解压文件到你指定的目录,不一定放在C:\下面,我自己就放在了也是可以的,就是在启动时,需要CMD命令定位到D:\program\nginx目录下才可以注意:本人下载的是nginx-1.2.1 这个版本,解压后,将文件名nginx-1.2.1修改为nginx2.在正式安装前呢,先配置一下,打开目录下的conf/nginx.conf文件然后修改将这里的80修改为任意端口号,我这里修改为8090.3.打开CMD命令行工具,进入到nginx安装目录下,我这里就是D:\program\nginx然后输入:nginx回车,没有任何提示,说明安装成功了,浏览器输入127.0.0.1:8090就算成功了一小步。
关闭Nginx的命令为:nginx –s stop4.接下来就是要配置一下服务器了,记得将刚才修改的conf/nginx.conf文件还原回去,避免后面设置时发生混乱前面说过了,我将Nginx安装在了192.168.21.1计算机上,那就先来配置这个上面的IIS,建立一个测试站点端口为801这个站点下面放置了一个index.html页面5.配置虚拟机上的IIS,同上,唯一的区别就是端口号设置为80就可以了。
Windows2012中安装Nginx并创建为Windows服务
Windows2012中安装Nginx并创建为Windows服务1、安装Nginx下载windows版nginx (/download/nginx-1.10.0.zip),之后解压到需要放置的位置(D:\xampp\nginx)2、将Nginx设置为Windows服务需要借助"Windows Service Wrapper"小工具,项目地址:https:///kohsuke/wi nsw下载地址:/releases/com/sun/winsw/winsw/1.18/winsw-1.18 -bin.exe下载该工具后,将其放在Nginx安装目录下,并重命名为nginx-service.exe,创建配置文件ngi nx-service.xml(名字要和工具名一样),创建nginx-service.exe.config(为支持NET 4.0 ru ntime,默认只支持NET 2.0 runtime)。
文件结构如下:nginx-service.xml 内容如下:<service><id>nginx</id><name>Nginx Service</name><description>High Performance Nginx Service</description><logpath>D:\xampp\nginx\logs</logpath><log mode="roll-by-size"><sizeThreshold>10240</sizeThreshold><keepFiles>8</keepFiles></log><executable>D:\xampp\nginx\nginx.exe</executable><startarguments>-p D:\xampp\nginx</startarguments><stopexecutable>D:\xampp\nginx\nginx.exe</stopexecutable><stoparguments>-p D:\xampp\nginx -s stop</stoparguments></service> nginx-service.exe.config 内容如下:<configuration><startup><supportedRuntime version="v2.0.50727" /><supportedRuntime version="v4.0" /></startup><runtime><generatePublisherEvidence enabled="false"/></runtime></configuration>在cmd中运行如下命令安装windows服务D:\xampp\nginx\nginx-service.exe install 之后就可以在Windows服务面板中启动服务了。
windows下nginx安装、配置与使用
windows下nginx安装、配置与使用1)下载地址:从nginx官网下载相应的安装包2)启动解压至c:\nginx,运行nginx.exe(即nginx -c conf\nginx.conf),默认使用80端口,日志见文件夹C:\nginx\logs3)使用http://localhost4)关闭nginx -s stop 或taskkill /F /IM nginx.exe > nul5)常用配置C:\nginx\conf\nginx.conf,使用自己定义的conf文件如my.conf,命令为nginx -c conf\my.conf常用配置如下:Nginx.conf代码http {server {#1.侦听80端口listen 80;location / {# 2. 默认主页目录在nginx安装目录的html子目录。
root html;index index.html index.htm;# 3. 没有索引页时,罗列文件和子目录autoindex on;autoindex_exact_size on;autoindex_localtime on;}# 4.指定虚拟目录location /tshirt {alias D:\programs\Apache2\htdocs\tshirt;index index.html index.htm;}}# 5.虚拟主机配置server {listen 80;server_name ;access_log /logs/access.log;location / {index index.html;root /htdocs;}}}http {server {#1.侦听80端口listen 80;location / {# 2. 默认主页目录在nginx安装目录的html子目录。
root html;index index.html index.htm;# 3. 没有索引页时,罗列文件和子目录autoindex on;autoindex_exact_size on;autoindex_localtime on;}# 4.指定虚拟目录location /tshirt {alias D:\programs\Apache2\htdocs\tshirt;index index.html index.htm;}}# 5.虚拟主机配置server {listen 80;server_name ;access_log /logs/access.log;location / {index index.html;root /htdocs;}}}小提示:运行nginx -V可以查看该Win32平台编译版支持哪些模块。
Windows下Nginx的启动、停止等命令
Windows下Nginx的启动、停⽌等命令Windows下Nginx的启动、停⽌等命令可以进⼊到nginx的安装根⽬录,执⾏nginx.exe -h在Windows下使⽤Nginx,我们需要掌握⼀些基本的操作命令,⽐如:启动、停⽌Nginx服务,重新载⼊Nginx等,下⾯我就进⾏⼀些简单的介绍。
1、启动:C:\server\nginx-1.0.2>start nginx或C:\server\nginx-1.0.2>nginx.exe注:建议使⽤第⼀种,第⼆种会使你的cmd窗⼝⼀直处于执⾏中,不能进⾏其他命令操作。
如果需要特殊设置nginx的配置⽂件路径,可以这样执⾏start nginx -c conf/nginx.conf2、停⽌:C:\server\nginx-1.0.2>nginx.exe -s stop或C:\server\nginx-1.0.2>nginx.exe -s quit注:stop是快速停⽌nginx,可能并不保存相关信息;quit是完整有序的停⽌nginx,并保存相关信息。
执⾏ nginx.exe -s stop或者quit命令是不是不能删除进程?查看进程开了⼀堆nignx.exe还有80端⼝在Listening,并且浏览器F5刷新还能访问页⾯,可能nginx.exe版本或系统的原因,⽤taskkill /f /im nginx.exe > null 杀死nginx进程3、重新载⼊Nginx:C:\server\nginx-1.0.2>nginx.exe -s reload当配置信息修改,需要重新载⼊这些配置时使⽤此命令。
4、重新打开⽇志⽂件:C:\server\nginx-1.0.2>nginx.exe -s reopen5、查看Nginx版本:C:\server\nginx-1.0.2>nginx -vnginx: nginx version: nginx/1.0.2或C:\server\nginx-1.0.2>nginx -Vnginx: nginx version: nginx/1.0.2nginx: TLS SNI support enablednginx: configure arguments: --builddir=objs.msvc8 --crossbuild=win32 --with-debug --prefix= --conf-path=conf/nginx.conf --pid-path=logs/nginx.pid --http-log-path=logs/access.log --error-log-path=logs/error.log --sbin-path=nginx.exe --http-client-body-temp-path=temp/client_body_temp --http-proxy-temp-path=temp/proxy_temp --http-fastcgi-temp-path=temp/fastcgi_temp --with-cc-opt=-DFD_SETSIZE=1024 --with-pcre=objs.msvc8/lib/pcre-7.9 --with-zlib=objs.msvc8/lib/zlib-1.2.3 --with-select_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_stub_status_module --with-http_flv_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-mail --with-ipv6 --with-openssl=objs.msvc8/lib/openssl-0.9.8r --with-openssl-opt=enable-tlsext --with-http_ssl_module --with-mail_ssl_module注:v只是简单显⽰版本信息,V不但显⽰版本信息,还显⽰配置参数信息。
windowsNginx基本使用方法
windowsNginx 基本使⽤⽅法相信很多⼈都听过nginx ,这个⼩巧的东西慢慢地在吞⾷apache 和IIS 的份额。
那究竟它有什么作⽤呢?可能很多⼈未必了解。
说到反向代理,可能很多⼈都听说,但具体什么是反向代理,很多⼈估计就不清楚了。
摘⼀段百度百科上的描述:反向代理(Reverse Proxy )⽅式是指以代理服务器来接受internet 上的连接请求,然后将请求转发给内部⽹络上的服务器,并将从服务器上得到的结果返回给internet 上请求连接的客户端,此时代理服务器对外就表现为⼀个服务器。
这⾥讲得很直⽩。
反向代理⽅式实际上就是⼀台负责转发的代理 服务器,貌似充当了真正服务器的功能,但实际上并不是,代理服务器只是充当了转发的作⽤,并且从真正的服务器那⾥取得返回的数据。
这样说,其实nginx 完成的就是这样的⼯作。
我们让nginx 监听⼀个端⼝,譬如80端⼝,但实际上我们转发给在8080端⼝的tomcat ,由它来处理真正的请求,当请求完 成后,tomcat 返回,但数据此时没直接返回,⽽是直接给nginx ,由nginx 进⾏返回,这⾥,我们会以为是nginx 进⾏了处理,但实际上进⾏处 理的是tomcat 。
说到上⾯的⽅式,也许很多⼈⼜会想起来,这样可以把静态⽂件交由nginx 来进⾏处理。
对,很多⽤到nginx 的地⽅都是作为静态伺服器,这样可以⽅便缓存那些静态⽂件,⽐如CSS ,JS ,html ,htm 等⽂件。
这⾥,由于我的是windows ,当然下windows 版啦。
下完后⾸先要启动吧。
进⼊到nginx ⽂件夹,直接start nginx 就OK 了。
⽐如我下载后放在D:\software \developerTools\server\nginx-1.1.7,直接cmd 后cd D:\software\developerTools \server\nginx-1.1.7,有些不习惯命令⾏的可能会奇怪,它没有进⾏到那个⽂件夹。
nginx 在win7的安装运行注意事项
nginx 在win7的安装与运行本来想在windows7上安装Nginx,然后部署thinkphp的,过程中遇到了一些小问题,所以都记录下来!供以后查阅!几个细节的东西,有必要写清楚!官网上下载地址:/en/download.html就那最新的版本做实验吧。
我下了windows原生版本 1.3.5,整个文件就是一个zip压缩文件。
下载到F 盘的根目录下,解压缩。
出来的文件夹是nginx-1.3.5,顺便改成了nginx,方便使用(其实改不改都没有关系,改了,是因为重启nginx的时候,少打点字母罢了)。
然后冲动的进入文件夹,双击启动文件nginx.exe,弹出了一个doc窗口,就在眨眼的功夫里,消失了,没有看清提示什么内容;不管三七二十一,我在浏览器了,打开127.0.0.1,提示无法显示页面。
我们没有安装IIS7,如果是无法显示页面,说明nginx启动失败了。
但是到底是什么原因让nginx无法启动呢?我想个办法,放doc的提示显示出来,结果提示是:[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>看提示信息,是因为windows 的80 端口被占用了,所以又想办法把80端口释放了。
开始–运行–cmd 进入命令提示符输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选”查看”-”选择列”经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用。
我们需要确定谁占用了我们的80端口在windows命令行窗口下执行:C:>netstat -aon|findstr “80″TCP 0.0.0.0:19780 0.0.0.0:0 LISTENING 2044TCP 10.72.224.5:2558 96.17.109.8:80 ESTABLISHED 2044TCP 10.72.224.5:2757 60.210.176.209:80 TIME_WAIT 0TCP 10.72.224.5:3956 125.46.1.234:80 ESTABLISHED 2044TCP 10.72.224.5:3959 125.46.1.234:80 ESTABLISHED 2044UDP 0.0.0.0:2280 *:* 3700看到了吗,端口被进程号为2044的进程占用,继续执行下面命令:C:>tasklist|findstr “2044″360se.exe 2044 Console 0 37,680 K很清楚吧,360浏览器占用80端口,赶紧关闭。
Nginx代理本地文件夹(Windows环境)
Nginx代理本地⽂件夹(Windows环境)
安装环境:
win10
nginx-1.17.2
步骤:
⼀、打开nginx.conf
路径:\nginx-1.17.2\conf\nginx.conf
⼆、编辑
配置跨域以及代理⽂件夹路径
三、启动nginx
在nginx⽂件夹路径下启动cmd(查看nginx版本:nginx -v)
四、验证
浏览器输⼊localhost验证即可
五、问题
1、如果在修改nginx.conf前,已经启动了nginx的话,在修改完成后需要重新读取⼀下配置,并重启服务。
重新读取⽂件:nginx -s reload
重启服务:nginx -s reopen
2、在学习过程中,遇到过403 forbidden的情况。
⽹上说是权限问题,把user nobody改成user root即可,但是都是linux下的解决⽅案,我是win10环境,尝试改了各种⽤户,并没有反应。
研究过程中发现每次运⾏命令:start nginx,都会启两个nginx.exe的进程。
我开始时不知道,启动了⼗⼏个进程(正常应该只有俩),最后全部杀掉,重新配置⼀遍,就没有再报403了。
(不知道是不是这个原因)
六、关闭
nginx因为是通过命令⾏启动,并⾮关闭进程也会关闭,需同样通过命令。
退出:nginx -s quit
强制关闭:nginx -s stop。
window nginx编译
window nginx编译window nginx编译一、编译环境1、系统环境:Windows 7 Professional2、开发环境:Visual Studio 20153、工具:ActivePerl4、编译需要的安装包:nginx-1.10.2二、编译步骤1、安装ActivePerl下载并安装ActivePerl,安装好后会在C盘生成一个Perl文件夹,打开Perl文件夹,在文件夹中新建一个txt文件,名称自己命名,如build.txt;2、下载nginx访问nginx官网,下载最新的stable版本,本文使用的是nginx-1.10.2;3、设置编译所需环境变量打开系统环境变量的设置,在系统变量中新建4个变量:NGINX_ROOT:nginx的安装目录(例如:D:Developginx-1.10.2)MSYS_ROOT:msys所在的目录(例如:D:Developmsys-1.0)MSYS_ROOT_PERL:perl所在的文件夹(C:Perl)MSYS_ROOT_COMMAND:perl程序的文件夹(C:Perlbin)4、编辑编译脚本打开build.txt,在文件中输入下列脚本:#编译脚本设置set NGINX_ROOT=D:Developginx-1.10.2set MSYS_ROOT=D:Developmsys-1.0set MSYS_ROOT_PERL=C:Perlset MSYS_ROOT_COMMAND=C:Perlbin#开始编译cd %NGINX_ROOT%%MSYS_ROOT%msys.bat --norxvtcd %NGINX_ROOT%objsperl %MSYS_ROOT_PERL%Configure -B %NGINX_ROOT%objs-s %MSYS_ROOT_PERL%makepause保存,文件编码选择ANSI格式;5、开始编译双击build.txt,按照提示输入msys的密码(默认为:msys);编译过程可能较慢,等待的时间会比较长,等到提示完成后,编译成功;完成编译;。
windows下配置nginx开机自动启动
目前有 2 条留言 其中:访客:2 条, 博主:0 条
1.
00 : 2012年12月15日22:15:16 -49楼 @回复 回复
好东西,终于学会了,谢谢分享。
2.
tt : 2013年01月10日22:26:17 -48楼 @回复 回复
学习了,试试看
给我留言
留言无头像?
昵称 *
邮箱 *
网址
留言是种美德,写点什 么 ...
文章的介绍就到这里了,大家看过这篇文章后,就会觉得我是用心在写的,希望大家多帮忙分享一下,如果有什么好的建议也可以给我留 言!
0
您可能也喜欢:
windows 下配置 nginx反向代理
nginx性能改ows 8专业版 win7下配置nginx nginx源码分析之事
apache c# CPP css CSS3 C语言 html+css html5 IIS IP-guard java javascript jquery linux mssql mysql nginx php web前端 windows
windows 8 wordpress 信息防泄露 网页设计
提交留言 重写
插入图片 有人回复最新文章 近期热门 分类目录
php遍历目录文件的三种方法 简单阐述php冒泡排序算法 php求数列:1,1,2,3,5,8,13,21,34.. php获取来访的公网ip及ip归属地信息 apache开启gzip压缩功能的完整介绍 javascript实现div层拖拽效果的代码 纯javascript实现的以弹出层方式居中 javascript制作的网页对联广告代码实 javascript实现网页右下角弹窗及定位 windows下使用xampp在本地搭建ftp服
nginx在windows2003下以服务方式启动
post by rocdk890 / 2011-5-25 15:42 Wednesday windows技术发表评论nginx在windows 2003下是以nginx.exe的方式运行,一旦注销用户退出的话,nginx也跟着关闭了,为了解决这个问题才有下面这篇文章.系统:windows 2003软件:srvany.exe,instsrv.exe,srvany-instsrv和nginx-1.0.2.zip(srvany.exe,instsrv.exe,srvany-instsrv附件里有,nginx请自己去官网下)1.需要的软件都下好之后,从nginx的官网下载下来的nginx压缩包解压出来,在cmd里输入cd c:\nginx,我是解压到c盘的根目录,这个是根据个人习惯来的,把srvany.exe,instsrv.exe,srvany-instsrv拷入到c:\nginx的目录下.2.在c:\nginx目录下新建个nginx.reg文件,里面内容:Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NGINX\Parameters] "Application"="c:\\nginx\\nginx.exe""AppParameters"="""AppDirectory"="c:\\nginx\\"[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NGINX] "Description"="NGINX WEB 服务器"3.安装NGINX服务,输入命令:instsrv.exe NGINX c:\nginx\srvany.exe4.然后把nginx.reg导入注册表,再把服务与程序关联起来regedit /s nginx.reg5.最后启动nginx服务.net start nginx6.最后在本地浏览器里输入http://localhost 看到Welcome to nginx! 说明nginx工作正常.在进程里可以看到nginx是以system运行的.最后再送个网上找的脚本Chnxp.bat:@echo offtitle 安装Nginx为系统服务并自动启动color 0aset CURRENT_DIR=%cd%echo 正在安装,请稍候……instsrv.exe NGINX %CURRENT_DIR%\srvany.exereg add "HKLM\SYSTEM\CurrentControlSet\Services\NGINX\Parameters" /v Application /t reg_sz /d "%CURRENT_DIR%\nginx\nginx.exe" /freg add "HKLM\SYSTEM\CurrentControlSet\Services\NGINX\Parameters" /v AppParameters /t reg_sz /d "" /freg add "HKLM\SYSTEM\CurrentControlSet\Services\NGINX\Parameters" /v AppDirectory /treg_sz /d "%CURRENT_DIR%\nginx\\" /fnet start nginxclsecho.echo 恭喜您,Nginx服务器已经安装成功并已启动…echo.pause。
在windows的PHP环境下安装Nginx
在windows的PHP环境下安装Nginx。
以前一直是用apache做PHP的web服务器。
现在看看如何安装Nginx作为PHP的web 服务器。
1. 下载Ngix : /download/nginx-1.1.12.zip写这篇文章时,windows的最新版本。
2. 下载PHP与Nginx的cgi连接: /attachments/660/RunHiddenConsole.zip。
3. 将下载的Nginx解压到E:\nginx目录下。
4.修改E:\nginx\conf中的nginx.conf配置文件。
修改后如下:(去掉了没用的,可以直接复制,覆盖nginx.conf,只需修改第四步和第七步的项目目录即可。
)[sql]view plaincopy1.worker_processes 1;2.3.error_log logs/error.log; #第一步:打开错误日志4.5.events {6. worker_connections 1024;7.}8.9.http {10. include mime.types;11. default_type application/octet-stream;12. sendfile on;13. keepalive_timeout 65;14. server {15. listen 8088; #第二步:修改端口16. server_name localhost;17.18. charset utf-8; #第三步:修改字符集19.20. location / {21. root E:/workspace; #第四步:修改项目目录22.index index.php index.html index.htm; #第五步:加入indx.php23. autoindex on24. }25.26.27. error_page 500 502 503 504 /50x.html;28. location = /50x.html {29. root html;30. }31.32.33. location ~ \.php$ { #第七步:打开php的location,并进行如下配置34. root E:/workspace;35. fastcgi_pass 127.0.0.1:9000;36. fastcgi_index index.php;37. fastcgi_param SCRIPT_FILENAME E:/workspace$fastcgi_script_name; #修改成项目目录38. include fastcgi_params;39. }40.41.42. }43.}5. 打开php.ini。
Windows下用Nginx配置https服务器及反向代理的问题
Windows下⽤Nginx配置https服务器及反向代理的问题请求逻辑前端 --> https⽅式请求nginxnginx --> 通过http请求后端服务安装OpenSSL然后配置环境变量。
在系统环境变量中添加环境变量:变量名:OPENSSL_HOME变量值:F:\OpenSSL-Win64\bin;(变量值为OPENSSL安装位置下的bin⽬录)⽣成证书⽤命令⾏随便打开⼀个⽬录, 使⽤如下命令⽣成证书# 创建私钥# test⽂件名是⾃⼰随便起即可, 这个命令会让你设置两次rsa的密码, 请务必记住该密码, 后续需要使⽤, 命令执⾏完毕, 会在当前⽬录⽣成 test.key 的⽂件openssl genrsa -des3 -out test.key 1024# 创建csr证书, 这⾥⽤到的 test.key 是上⼀个命令⽣成的那个. 执⾏这个命令后,需要输⼊⼀系列的信息。
输⼊的信息中最重要的为Common Name,这⾥输⼊的域名即为我们要使⽤https访问的域名,⽐如我输⼊的是localhost。
其它的内容随便填即可。
以上步骤完openssl req -new -key test.key -out test.csr# 去除密码# 在加载SSL⽀持的Nginx并使⽤上述私钥时除去必须的⼝令,否则会在启动nginx的时候需要输⼊密码。
# 复制test.key并重命名为test.copy.key# 在命令⾏中执⾏如下命令以去除⼝令(此时需要输⼊密码,这个密码就是上⽂中在创建私钥的时候输⼊的密码。
)openssl rsa -in test.copy.key -out test.key# ⽣成crt证书. 证书⽣成完毕。
我们发现,ssl⽂件夹中⼀共⽣成了4个⽂件。
下⾯,配置https服务器的时候,我们需要⽤到的是其中的test.crt和test.key这两个⽂件。
openssl x509 -req -days 365 -in test.csr -signkey test.key -out test.crt下载安装nginx, 修改nginx配置将⽣成的test.key和test.crt移动到$NGINX_ROOT/conf⽬录#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events {worker_connections 1024;}http {include mime.types;default_type application/octet-stream;#log_format main '$remote_addr - $remote_user [$time_local] "$request" '# '$status $body_bytes_sent "$http_referer" '# '"$http_user_agent" "$http_x_forwarded_for"';#access_log logs/access.log main;sendfile on;#tcp_nopush on;#keepalive_timeout 0;keepalive_timeout 65;#gzip on;server {listen 80;server_name localhost;#charset koi8-r;#access_log logs/host.access.log main;location / {root D:/local-site;index index.html index.htm;}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {# proxy_pass http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000##location ~ \.php$ {# root html;# fastcgi_pass 127.0.0.1:9000;# fastcgi_index index.php;# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;# include fastcgi_params;#}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {# deny all;#}}server {listen 8086;listen localhost:8086;server_name localhost;gzip on;gzip_buffers 4 16k;gzip_comp_level 6;gzip_vary on;gzip_types text/plain text/css application/json application/x-javascript application/javascript text/xml application/xml application/xml+rss text/javascript;location / {root D:/local-site/good-test;index index.html index.htm;}location ^~/api/ {rewrite ^~/api/(.*)$ /$1 break;proxy_pass http://localhost:8080/; #代理IP:端⼝}}# HTTPS server 配置, 这⾥使⽤了反向代理和跨域⽀持, 注意nginx和后端服务, 只需要在nginx设置跨域即可, 后端服务的跨域不要开启, 如果两边都开启了跨域, 会出问题 #server {listen 443 ssl;server_name localhost;ssl_certificate test.crt;ssl_certificate_key test.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;# location / {# root html;# index index.html index.htm;# }location / {# rewrite ^~/api/(.*)$ /$1 break;# add_header Access-Control-Allow-Origin *;# 允许客户端的请求⽅法add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT';# 允许客户端提交的的请求头add_header 'Access-Control-Allow-Headers' 'Origin, x-requested-with, Content-Type, Accept, Authorization';# 允许客户端提交Cookieadd_header 'Access-Control-Allow-Credentials' 'true';# 允许客户端访问的响应头add_header 'Access-Control-Expose-Headers' 'Cache-Control, Content-Language, Content-Type, Expires, Last-Modified, Pragma';proxy_pass http://10.114.119.61:8080;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Forwarded-Port $server_port;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}}server {listen 8443 ssl;server_name localhost;ssl_certificate test.crt;ssl_certificate_key test.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;# location / {# root html;# index index.html index.htm;# }location / {# rewrite ^~/api/(.*)$ /$1 break;# add_header Access-Control-Allow-Origin $http_origin;# 允许客户端的请求⽅法add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, DELETE, PUT';# 允许客户端提交的的请求头add_header 'Access-Control-Allow-Headers' 'Origin, x-requested-with, Content-Type, Accept, Authorization';# 允许客户端提交Cookieadd_header 'Access-Control-Allow-Credentials' 'true';# 允许客户端访问的响应头add_header 'Access-Control-Expose-Headers' 'Cache-Control, Content-Language, Content-Type, Expires, Last-Modified, Pragma';# 这是是配置需要代理的服务proxy_pass http://10.114.119.61:7001;# proxy_pass https://172.16.46.38:8443;# proxy_pass http://10.114.119.61:8866;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Forwarded-Port $server_port;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;}}}重启nginx本地域名配置打开C:\Windows\System32\drivers\etc\hosts⽂件加⼊配置:10.114.119.61 10.114.119.61 到此这篇关于Windows下⽤Nginx配置https服务器及反向代理的⽂章就介绍到这了,更多相关Nginx配置https服务器内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
让Nginx作为Windows服务开机自启动
让Nginx作为Windows服务开机自启动二种方法:第一种方法:1. 安装相应的.NET Framewor支持。
2. 下载WINSW工具,下载地址为:/maven/2/com/sun/winsw/winsw/1.9/3. 下载NGINX的WINDOWS版本,它是一个压缩包,解开后放在相应目录,以下以下面的目录结构为准: C:\NGINXSERVER\NGINX C:\NGINXSERVER\PHPC:\NGINXSERVER\MYSQL4. 把WINSW.EXE复制到NGINX目录下,并在同一目录下新建一个WINSW.XML文件,其内容为: <service>02 <id>nginx</id>03 <name>nginx</name>04 <description>nginx</description>05 <executable>c:\nginxserver\nginx\nginx.exe</executable> 06 <logpath>c:\nginxserver\nginx\< /logpath> 07 <logmode>roll</logmode>08 <depend></depend>09 <startargument>-p c:\nginxserver\nginx</startargument>10 <stopargument>-p c:\nginxserver\nginx -s stop</stopargument>11 </service>5. 进入命令提示符下,运行以下命令把NGINX安装为WINDOWS的服务项: C:\NGINXSERVER\NGINX\WINSW.EXE INSTALL如想卸载该服务,则运行C:\NGINXSERVER\NGINX\WINSW.EXE UNINSTALL第二种方法:1.下载微软服务注册工具srvany.exe, instsrv.exe, 存放到C:\NGINXSERVER\nginx\目录下 /soft/down/srvany.rar2.安装NGINX服务, 将命令行切换到C:\NGINXSERVER\下执行下列命令 instsrv NGINX C:\NGINXSERVER\nginx\srvany.exe3.在C:\NGINXSERVER\nginx\下编辑一个nginx.reg文件:Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NGINX\Parameters] "Appli cation"="C:\\NGINXSERVER\\nginx\\nginx.exe" "AppParameters"="" "AppDirectory"=" C:\NGINXSERVER\\nginx\\"5.让服务与程序关联起来, 命令行执行regedit /s nginx.reg上面这个执行失败的解决办法:运行regedit打开注册表,直接在[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NGINX下添加Parameters 一项,然后手动建立三个字符串的注册表值,就是上面这三个Application AppParameters AppDirectory6.编辑启动nginx脚本start-nginx.bat(关闭脚本不用变), 让程序以服务方式运行 @ECHO OFFnet stop nginx net start nginx EXIT经过上面的步骤,顺利启动nginx服务,另外添加服务还有一个图形界面的工具SRVINSTW.EXE。