在windows上安装nginx并注册

一、前言

  最近自己也尝试了一下在windows上安装nginx,其实非常的简单,这里算是备忘一下。

二、在windows下面安装

  首先需要到nginx的官网上下载最新版的nginxhttp://nginx.org/en/download.html

  找到最新版本下载即可:

  至于后面的pgp,其实是一种密钥机制(pretty good privacy)。

  下载之后,我们发现这个文件是不用安装的,也就是不需要在windows的注册表中注册的,因此我们可以直接使用,如果大家有使用过masm之类的汇编软件,相信大家会理解的,之后,我们就可以直接在cmd中运行了,这个时候可能会出现问题,其中一个问题是闪退。

  闪退的原因有很多种,我们要注意查看日志文件:

  如果大家遇到下图中我画出的问题:

 // :: [emerg] #: CreateFile() "C:\Users\爱好妹子的朱\Desktop\nginx-1.13.7/conf/nginx.conf" failed (: No mapping for the Unicode character exists in the target multi-byte code page)

    那么原因其实很简单,我们读了日志之后就能理解,不能映射编码,说明我们肯定是在路径中有中文字符,也就是我们的文件存放目录一定不能是中文的,要不然肯定会闪退的。

  解决办法就是把下载的文件放到全英文的目录之中。

  还有一个错误是:

  绑定端口异常,那肯定呀,80端口是默认让http协议使用的,我们这里肯定不能占用,同时我们也可以回忆一下常用的端口,比如HTTPS(443),ftp(20,21)等等。

  解决办法也很简单,只需要在NGINX中修改一下配置即可:

  我们在sublime中打开该文件:

  就可以看到相应的配置信息,比如IP地址和端口,这里笔者已经改成了一个大于1024的端口了(其他任意)。

  让我们仔细看一下配置文件,我们以后的很多操作都可以从中配置:

   #user  nobody;
worker_processes ; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; events {
worker_connections ;
} 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 ;
keepalive_timeout ; #gzip on; server {
listen ;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / {
root html;
index index.html index.htm;
} #error_page /.html; # redirect server error pages to the static page /50x.html
#
error_page /50x.html;
location = /50x.html {
root html;
} # proxy the PHP scripts to Apache listening on 127.0.0.1:
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:;
# 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;
#}
} # another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen ;
# listen somename:;
# server_name somename alias another.alias; # location / {
# root html;
# index index.html index.htm;
# }
#} # HTTPS server
#
#server {
# listen ssl;
# server_name localhost; # ssl_certificate cert.pem;
# ssl_certificate_key cert.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;
# }
#} }

三、将nignx注册成服务

如果我们经常使用,那么在cmd之中启动是非常不方便的,因此,我们可以将其注册成服务

首先我们下载Windows Service Wrapper(比如winsw-1.8-bin.exe服务注册工具,然后将这个工具放到ngnix安装目录之下,然后新建一个文件,这个文件的文件名需要和我们的服务注册工具一致,也就是说如果把服务注册工具重命名,那么这个文件也需要重命名(winsw-1.8-bin.xml):

 <?xml version="1.0" encoding="UTF-8" ?>
<service>
<id>nginx</id>
<name>zyrNginx Service</name>
<description>High Performance Nginx Service 朱彦荣 zyr</description>
<executable>D:\nginx-1.14.\nginx.exe</executable>
<logpath>D:\nginx-1.14.\</logpath>
<logmode>roll</logmode>
<depend></depend>
<startargument>-p D:\nginx-1.14.</startargument>
<stopargument>-p D:\nginx-1.14. -s stop</stopargument>
</service>

    注意上面的文件我们要修改nginx存放的目录,以及相关的配置。

    然后我们在命令行(管理员模式,不然权限不够)中,将该服务注册到windows系统之中:

    最后我们打开任务管理器中的服务,可以发现我们自己命名的服务已经出现了:

在windows上安装nginx并注册的更多相关文章

  1. 在windows上安装nginx

    在windows上安装nginx   最近自己也尝试了一下在windows上安装nginx,其实非常的简单,这里算是备忘一下.   首先需要到nginx的官网上下载最新版的nginx:http://n ...

  2. 在Linux和Windows系统上安装Nginx服务器的教程

    在Linux和Windows系统上安装Nginx服务器的教程  1.在CentOS系统上安装Nginx 在 CentOS6 版本的 EPEL 源中,已经加入了 nginx 的 rpm 包,不过此 RP ...

  3. WordPress安装篇(2):用宝塔面板在Windows上安装WordPress

    上一篇文章介绍了如何使用PHPStudy工具在Windows Server环境安装WordPress,接下来介绍一款更加强大的部署WordPress的集成工具--宝塔面板.宝塔面板不仅提供免费版本,还 ...

  4. windows下安装nginx

    说起开发,自己感到非常惭愧,由于公司让我给<绿电侠>项目写整体架构解决方案,才开始接触nginx这个东东,突然觉得它是一把非常好的利器. 本文主要记录在windows下安装nginx,另参 ...

  5. (转)如何在Windows上安装多个MySQL

    原文:http://www.blogjava.net/hongjunli/archive/2009/03/01/257216.html 如何在Windows上安装多个MySQL 本文以免安装版的mys ...

  6. 在Windows上安装MySQL(免安装ZIP版)

    在 Windows 上安装MySQL(免安装ZIP版) 因为一些原因,重新安装了MySQL数据库,重装时习惯性使用最新版下载 此过程中发现MySQL 5.7.12 和MySQL 5.6的安装有些区别: ...

  7. 如何在Windows上安装多个MySQL

    将MySQL注册为系统服务:%MySQL_HOME%\bin>mysqld --install mysql5.1,此时,在运行中输入"services.msc"或者打开&qu ...

  8. Windows上安装配置SSH教程(2)——在Windows XP和Windows 10上安装并配置OpenSSH for Windows

    知识点汇总:http://www.cnblogs.com/feipeng8848/p/8559803.html ------------------------ 安装方式有3种: (1)Windows ...

  9. 在 windows 上安装免安装版的mysql

    在 windows 上安装免安装版的 1. 下载路径 https://downloads.mysql.com/archives/community/ 2. 解压 假设解压后的路径为:E:\Enviro ...

随机推荐

  1. Python学习--两种方法爬取网页图片(requests/urllib)

    实际上,简单的图片爬虫就三个步骤: 获取网页代码 使用正则表达式,寻找图片链接 下载图片链接资源到电脑 下面以博客园为例子,不同的网站可能需要更改正则表达式形式. requests版本: import ...

  2. 【随笔】 MyEclipse2014的安装和破解

    MyEclipse,是在eclipse 基础上加上了自己的插件.MyEclipse,是在eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java.Java EE以及 ...

  3. 创建WPF用户控件

    wpf用户自定义控件和winform创建方法类似,这里先纠正一个误区,就是有很多人也是添加,然后新建,然后是新建用户控件库,但是为什么编译好生成后Debug目录下还是只有exe文件而没有dll文件呢? ...

  4. mybatis学习之高级映射

    一对一映射查询 1.数据库执行脚本: /* SQLyog Ultimate v12.09 (64 bit) MySQL - 5.7.11-log : Database - db_mybatis *** ...

  5. 2017年12月13日 LinQ用法基本的增删改查

    LinQ是什么? LinQ是语言集成的查询,是用于C#跟Vb的扩展语言 LinQ的用法 新建一个App_Code文件夹,在文件夹下添加一个数据LinQ to SQL类,可以直接直接点击服务器管理器然后 ...

  6. String.replace使用技巧

    relace replace() 方法返回一个由替换值替换一些或所有匹配的模式后的新字符串.模式可以是一个字符串或者一个正则表达式, 替换值可以是一个字符串或者一个每次匹配都要调用的函数. 使用字符串 ...

  7. SQLServer导入大sql文件报错 对 COM 组件的调用返回了错误 HRESULT E_FAIL。 (mscorlib)

    打开cmd执行(d:\script.sql为sql文件位置):  sqlcmd -S 127.0.0.1 -U sa -P sa -i d:\script.sql    From:https://ww ...

  8. 欣欣的留言板项目====超级触动的dbUtil实现留言板

    留言板管理系统 我的完成效果图: 提交后: 我的留言板基本架构如图: 创建留言板数据库: 刚开始我的前台主页中写留言信息表单: <body> <h1>留言板</h1> ...

  9. .NET开源工作流RoadFlow-流程运行-管理员干预

    在流程运行过程中管理员可以干预流程实例的走向,如管理加强制退回,指派和删除流程实例操作.在 流程管理-->实例管理 中查找到相应的流程实例,点击管理按钮即可管理该流程实例: 点击指派按钮,选择要 ...

  10. 【2014-08-23】Beyong Coding

        be a product engineer,not be a engineer 选择比努力更重要   just code it,code it ,until you make it 缺的不是i ...