Windows下的Nginx图片服务器搭建

Windows下的Nginx图片服务器搭建·

其实现在网上的图片托管服务也是非常成熟了,本人之前也是用了一个月的七牛云的对象存储服务来进行图片托管。当然也只是用了一个月而已,因为它的测试域名只能用一个月,一个月后你就要绑定一个自己的域名。绑域名简单啊,可是七牛云坑的就是要绑一个已经备案的域名,因为本人当时域名备案受限(也是一把泪啊,当然还是鼓励大家域名备案的),所以让七牛云进行图片托管的路也算是废了(其实七牛云还蛮好用的)。
于是乎,我为了解决这个图片托管的问题,找遍了各种方法,到头来想了想,还是放自己服务器里托管更方便,所以就找到了用Nginx来搭建图片服务器。
以上是我的吐槽,以及图片托管的一些经历。下面废话不多说,进入正题。

Nginx·

  • Nginx是什么?
    Nginx是一个开源的Web服务器,同时Nginx也提供了反向代理和负载均衡的功能。
    Nginx通常作为负载均衡器暴露在外网接受用户请求,同时也使用其反向代理的功能,将用户的请求转发到实际提供服务的内网服务器。
  • Windows什么情况下需要Nginx?
    通常来说Windows下IIS就够用了,支持 .NET、ASP、PHP等等,不过如果你需要做负载均衡那你就需要Nginx,或者说你在一台服务器上,部署了Apache、IIS、Tomcat等多个Web服务器,这时候把80端口或443端口给Nginx在合适不过了。
    当然,作为商业公司来说,通常不会有以上情况,但是如果你是个草根站长。或者说你想把你的Windows开发机作为服务器对外提供服务,那把你的Windows装上Nginx再合适不过了。

简要步骤·

  1. 安装Nginx并启动
  2. 配置地址链接
  3. 然后就可以用了

安装Nginx并启动·

  1. 下载nginx,下载地址:http://nginx.org/,以nginx-1.16.1.zip为例,下载下来后,解压到如:C:\nginx\nginx-1.16.1
  2. 启动nginx,双击文件夹里的nginx.exe,双击后会有一个黑色的弹窗一闪而过
  3. 检查nginx是否启动成功
    直接在浏览器地址栏输入网址 http://localhost:80,回车,出现以下页面说明启动成功

    也可以在cmd命令窗口输入命令 tasklist /fi "imagename eq nginx.exe" ,出现结果说明启动成功
    nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果80端口被占用可以修改为未被占用的端口即可
    检查80端口是否被占用的命令是: netstat -ano | findstr 0.0.0.0:80netstat -ano | findstr "80"

这里建议大家改一下端口,比如我的就改成88端口了,因为80端口是比较频繁被访问的端口,我们的图片服务器就另用其他的端口比较好。而且也能避免某些冲突和问题。

  1. 关闭nginx
    如果使用cmd命令窗口启动nginx,关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx
    (1)输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)
    (2)使用taskkill taskkill /f /t /im nginx.exe

这里要注意的是,每次重启电脑以后,Nginx服务器都会关闭,所以需要自己手动打开,当然也可以设置计划任务让它自动打开。

当我们修改了nginx的配置文件nginx.conf 时,不需要关闭nginx后重新启动nginx,只需要执行命令nginx -s reload即可让改动生效

配置文件链接·

如果有配置FTP服务器,那可以在FTP服务器的根目录下创建一个img文件夹;没有FTP服务器就随便创建一个文件夹。
这里,我就在nginx目录下的html创建img文件夹

接下来,打开Nginx的配置文件(nginx.conf),路径:…\nginx-1.17.7\conf\nginx.conf ,没有其他软件打开的话,就用记事本也可以打开。

添加两行代码

这里可以看到,我用的端口是88端口,然后再location / {…}后面空一行,添加如图代码,稍微注意一下格式,涂红处的路径就是你改成创建的img文件夹。

访问图片的地址是:http://localhost:88/img/1.jpg

Nginx常用命令·

命令说明
nginx -h查看帮助信息
nginx -v查看Nginx版本
nginx -s stop停止Nginx
nginx -s quit优雅的停止Nginx(处理完正在进行中请求后停止)
nginx -s reload重新加载配置,并优雅的重启进程
nginx -s reopen重启日志文件