60分钟发布个人主页(静态网页)

本文讲要介绍如何建立一个静态网站。适合有一定html css经验的人阅读。

首先是写一个静态页面,不想写直接用bootstrap模版改改参数也是可以做出挺漂亮的页面。
<a href="https://startbootstrap.com/"> 模版传送门</a>

经过一番修改之后把文件夹命名为www
文件夹底下差不多是这样

屏幕快照 2017-03-10 下午1.22.20.png

就记得里面有几个文件夹,放静态文件,诸如图片(网页上的图片)。最重要的是<b>index.html</b>
本地打开index.html显示正常(没有叉叉)的话就可以做下一步了。

接下来我们的网页是要放到网上去的(废话),所以需要一个服务器。本文是用的是AWS EC2。

<h4>step1</h4>:管理控制台->服务->“计算”下的EC2->启动实例(安全组记得选择允许http 80端口,懒的人可以直接设置选择所有流量,不过这样不安全,记得多关注流量情况,土豪除外)

<h4>step2</h4>:终端连接实例(Mac的话直接拷贝链接至终端,Windows要用 putty)

<h4>step3</h4>:将刚才写好的www文件夹放到服务器上,Mac 用filezilla ,Windows 用 winCP。<a href="http://www.mrsheng.com/problem/way-to-use-filezilla-to-connect-amazon-aws-ec2.html">操作详情</a>
<h4>step4</h4>:配置nginx

<b>1.使用如下指令进行安装nginx</b>

sudo apt-get update 
sudo apt-get install nginx
sudo service nginx start

<b>2.nginx初始配置</b>
nginx 的默认配置文件位于

/etc/nginx/nginx.conf

在配置文件中有一行:

include /etc/nginx/sites-enabled/*

这行负责加载外部配置文件,查看sites-enabled目录,该目录下只有一个default文件,这个外部的配置文件就是负责我们 nginx 的默认代理。这个配置文件的主要内容如下:

server {
    server_name localhost;
    listen 80 default_server;
        # SSL configuration
        #
        # listen 443 ssl default_server;
        # listen [::]:443 ssl default_server;
        #
        # Note: You should disable gzip for SSL traffic.
        # See: https://bugs.debian.org/773332
        #
        # Read up on ssl_ciphers to ensure a secure configuration.
        # See: https://bugs.debian.org/765782
        #
        # Self signed certs generated by the ssl-cert package
        # Don't use them in a production server!
        #
        # include snippets/snakeoil.conf;
    root /usr/share/nginx/html;
    index index.html index.htm;

    location / {
    try_files $uri $uri/ =404;
    }
}

这段话改为

server {
        listen 80 default_server;
        listen [::]:80 default_server;

        # SSL configuration
        #
        # listen 443 ssl default_server;
        # listen [::]:443 ssl default_server;
        #
        # Note: You should disable gzip for SSL traffic.
        # See: https://bugs.debian.org/773332
        #
        # Read up on ssl_ciphers to ensure a secure configuration.
        # See: https://bugs.debian.org/765782
        #
        # Self signed certs generated by the ssl-cert package
        # Don't use them in a production server!
        #
        # include snippets/snakeoil.conf;

        root /home/ubuntu/www;

        # Add index.php to the list if you are using PHP
        index index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

重点是下面这行,这一行的意思是你网页(index.html)所在的目录,当外界直接在http协议下访问你EC2的公有 IP时,看到的会是这个目录下的html文件。

root /home/ubuntu/www

<b>3.配置生效</b>
输入如下指令

sudo service nginx reload

做到这一步,打开浏览器访问你EC2的公有ip出來的页面应该是你写好的网站啦。做到这里你就一定会想每次输地址好麻烦呀,能不能有个www样子的地址?答案是可以的,只要肯花钱。
<h4>step5</h4><b>域名解析到ip地址</b>
1.选择域名服务(以百度云为例)。界面如下

域名服务界面

点击你想要的域名->解析
<b>2.做如下的设置</b>


解析设置

特别注意记录值就是EC2的公有ip。

这样以后就大功告成啦,欢迎大家点击我的个人网页(可耻地用了模版)
------->> <a href="http://www.kevinhuang.top/">Kevin Wong</a>

参考资料
1.<a href="http://www.cnblogs.com/h9527/p/5530298.html">静态页面配置</a>
2.<a href="http://www.mrsheng.com/problem/way-to-use-filezilla-to-connect-amazon-aws-ec2.html">如何用FileZilla连接Amazon EC2</a>

推荐阅读更多精彩内容