MAC下安装Nginx 并搭建一个 静态 服务器

作者: 顾顾314 | 来源:发表于2019-01-25 09:36 被阅读4次

    某日,领导把我叫去谈话,说是要帮助我快速成长。给我出了这样一个问题:

    使用nginx搭建web服务器,可以在网页上列出指定目录下的文件,可以点击下载文件。

    说实话不是通信专业科班出身,之前从未接触过,有点懵逼。于是我开始着手准备,好在现在网络太强大,一晚上对这方面的知识有所了解并完成了考察。

    问题一:服务器的软件有哪几种

    答:服务器软件有 Apache 服务器、Nginx 服务器和 WindowsServer 服务器。


    问题二、如何理解静态网页和动态网页

    答:不需要和后台进行交互的网页一般可称为静态网页,比如只能浏览和下载的页面;
    需要和后台进行交互的网页成为动态服务器,比如提交表单。


    这里我们需要搭建一个基于 Nginx 的静态服务器。分步骤操作:

    一、安装 Nginx

    这里我使用的是homebrew 进行安装。

    安装完成以后:

    步骤一、首先更新 homebrew
    brew update

    如果上面操作长时间没任何动静,请更换镜像,参考清华的镜像 https://mirrors.tuna.tsinghua...

    如果你在这一步遇到了这个错误:

    Another active Homebrew update process is already in progress. Please wait for it to finish or terminate it to continue.

    解决办法:
    rm -rf /usr/local/var/homebrew/locks
    如果你对 rm -rf不熟悉,建议你直接到 locks 目录下手动删除。你放酿成大错。

    更新 homebrew 这一步不可省略,即使你跳过了这一步,直接使用 homebrew 安装软件,那么安装之前还是会先更新,如下图:


    1B51A08A-8EC2-478B-A5D0-A14AD748F5F3.png

    步骤二、查看 nginx 信息
    brew info nginx

    如果你还没安装 nginx,使用该命令会提示你 Not install。如果已经安装会显示 nginx 一些信息,如下图:

    查看 nginx 信息

    步骤三、安装 nginx
    brew install nginx

    请注意,这个地方特别牛逼,不需要你手动安装 nginx 的各个依赖库了,这里全部安装好,依赖库主要由:openssl、pcre。我已经安装了 nginx,这里重复安装会有提示,如下图:


    安装 nginx

    如果你是第一次安装,安装好之后会告诉你 nginx 配置文件路径,安装好之后我们也可以通过查看 nginx 信息获取 nginx 路径信息(如图步骤二),配置文件路径:/usr/local/etc/nginx/nginx.conf

    可以直接通过文本编辑器工具打开编辑该文件,也可以通过 Vim 打开编辑。这里我打开的时候选择打开方式为“文本编辑”,如图:


    查看配置文件

    步骤四、启动 nginx
    nginx

    在命令行输入这个命令后什么现象也没有,在浏览器输入 localhost:8080
    那么你就会看到如下页面:


    image.png

    恭喜你,看到这个网页说明你的 nginx 安装成功。其实这个页面是一个静态文件,路径是:/usr/local/var/www/index.html

    在路径/usr/local/var/www下还有一个文件是:/usr/local/var/www/50x.html如果安装不成功就会显示这个文件里的内容。
    其实还有一个路径下也有这两个文件,内容相同,随便修改那一个路径下的文件内容,另一个路径下的文件也会一起跟着变化:/usr/local/Cellar/nginx/1.15.8/html不知道这两个路径分别有什么不同。

    这里的端口8080是可以修改的,只要和你本地的端口不冲突就可以,比如可以修改为8181或者9999。我们还可以使用命令行查看当前哪些端口被占用了,而我们又很想使用该端口,那么就把占用端口的进程结束掉,使得这个端口空闲下来。

    二、搭建静态服务器

    搭建这个服务器的目的是能够和在同一局域网下的同学们分享文件,当然了我是搭建在我自己的电脑上的,我如果不共享我的电脑,那就只能我自己分享文件给其他同学,只需要给他们一个链接,就可以随意下载了。
    比如我把需要分享给其他同学的文件全都放在一个目录下。
    我在桌面上创建了一个文件夹,命名为 NginxTest。那么这个文件在我电脑(当前主机)的路径就是:/Users/guxuecheng/Desktop/NginxTest

    我们在安装完毕 Nginx 以后,在浏览器输入 localhost:8080网页上网页上显示了 Welcome to nginx!为什么是显示这个内容呢?因为地址 localhost:8080就是指向这个文件的。现在我们希望这个地址指向我们指定的文件 NginxTest,那么就需要在配置文件里修改中这个指向。现在我们再来分析一下配置文件:


    配置文件
    • listen:nginx 使用的端口号,可以修改。
    • Server_name: 默认是 localhost,那么就只能本地自己访问,其他人无法访问。现在把他修改为本地主机的 IP 地址,那么任何人有了这个 IP 都可以访问。
    • root:默认是 html,所以才能显示/usr/local/Cellar/nginx/1.15.8/html路径下的两个文件内容。现在我们需要显示指定文件的内容,那么久填写指定文件的路径。
    • autoindex on:这个参数是自己添加的,意思就是允许 nginx 访问文件夹目录。如果没有这个值,会报403
    • autoindex_exact_size off:显示文件大小。
    • autoindex_localtime on:显示文件创建时间。
    • charset utf-8,gbk:解决中文乱码问题。

    配置文件修改结束记得保存,然后需要重启 nginx
    nginx -s reload

    然后在浏览器输入Server_name 的值,也就是你自己填写的 IP 地址,加上端口号,比如:192.168.13.78:8080就可以访问并下载 NginxTest 目录下的 文件了,可以把这个链接发送给你的同学,他们也就可以访问了,自己访问还是只需要 localhost:8080就可以:


    静态网页

    相关文章

      网友评论

        本文标题:MAC下安装Nginx 并搭建一个 静态 服务器

        本文链接:https://www.haomeiwen.com/subject/jybujqtx.html