美文网首页
Ubuntu16.04 + Nginx 配置虚拟主机

Ubuntu16.04 + Nginx 配置虚拟主机

作者: HelenYang0121 | 来源:发表于2018-09-08 11:22 被阅读0次

    写在开头,其实这个配置方法网上一搜一大堆,而且都写的很好,以下也是我自己参考的一篇,https://blog.csdn.net/Forrest_Gao/article/details/74522337 。之所以记录下来,是因为昨天试了好多遍,一直不理解一个点,今天早上醒的时候,躺在床上,突然灵光一现,想到了我的hosts配置应该在我自己主机windows上完成。因为开始学这个的时候看的老师的视频,老师使用的是Linux系统,开了几个终端,本机和虚拟我也没有分清楚。自己在做的时候就出现了很多问题。以下记录一下详细步骤吧。

    安装nginx很简单

    sudo apt install nginx

    这里补充一下,ubuntu中使用apt的默认安装路径:

    系统安装软件,文档一般在/usr/share,可执行的文件在/usr/bin,配置文件可能安装到了/etc下,lib文件在 /usr/lib。

    首先去查看它的配置文件,进入到/etc/nginx下

    其中nginx.conf是它的一个总的配置文件,在里面有很多include,表示会把另外一些配置文件一起加载

    那我们要配置的文件就在sites-available和sites-enabled中,其中sites-enabled是使之生效的一个链接。

    将sites-available文件夹中的default复制一份到test中

    sudo cp default test

    接下来就是修改test文件了

    # server配置server

    {

            listen 80;    #这里要把dufault文件中的default_server删掉

            listen [::]:80;    #同上

            server_name www.test.com;    #你配置的对应的域名

            root /var/www/test.com/html;     #你的root文件所在的地址,此处我还未新建。参考上面链接的文章第一步就好了。

            index index.html     

            location /

            {

                    try_files $uri $uri/ =404;

            }

    }

    还有一步很重要的刚刚提过的,添加软链接

    # 创建一个软链接到 /etc/nginx/sites-enabled/ 目录下,使配置文件生效sudo ln -s /etc/nginx/sites-available/test /etc/nginx/sites-enabled/

    最后重启nginx

    sudo /etc/init.d/nginx restart

    如何查看nginx是否已经启动

    ps -ef | grep nginx

    最后访问www.test.com,发现无法访问,是因为漏了最重要的一步,我们刚刚定义的这个域名,www.test.com,没有登记过,也没有将域名与我们的ip对应起来,所以浏览器自然找不到,所以还要在我们本机hosts中,添加一项,公网ip www.test.com。

    window系统中的hosts文件放在C:\Winnt\System32\Drivers\Etc 目录中

    到此,浏览器输入www.test.com就可以在本机访问到自定义的主页了,但只限于本机。

    关键点在于:通过在hosts文件中添加ip和域名,则可以将www.test.com对应到服务器上,接着通过域名找到与对应的server_name的配置文件,会显示在配置文件中root路径下的index页面。这样就完成了整个过程。

    相关文章

      网友评论

          本文标题:Ubuntu16.04 + Nginx 配置虚拟主机

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