Nginx静态网站搭建


Nginx 同 Apache 一样都是一种 Web 服务器。基于 REST 架构风格,以统一资源描述符(Uniform Resources Identifier)URI 或者统一资源定位符(Uniform Resources Locator)URL 作为沟通依据,通过 HTTP 协议提供各种网络服务。

1. 安装Nginx

# Debian/Ubuntu等系统
apt-get install nginx

# Centos/RedHat等系统
yum -y install nginx

由于安装的方式不一样,源码安装和apt-get/yum安装的,nginx的安装位置会有一些差别,最好使用使用find / -name nginx指令查看nginx的安装位置,/etc/nginx这个为配置目录,sbin/nginx这个为启动目录,配置目录下的nginx.conf为主要的配置的文件,里面包括资源目录、域名等配置项

2. 设置Nginx用户

Nginx默认是以nginx用户启动的,如果服务器中不存在nginx用户,就会报Permission denied错误,具体表现打开网站时会报403错误

需要修改配置文件,使其以root用户权限运行,编辑/etc/nginx/nginx.conf文件,找到以下位置,修改启动用户名

# user nginx;
user root;

3. 设置网站信息

譬如我现在有一个网站资源文件夹/home/test,可以在/etc/nginx/nginx.conf中找到以下内容进行设置

server {
        listen       80 default_server; // 服务器端口号
        listen       [::]:80 default_server; // 服务器映射ip+端口号
        server_name  _;   // 你的博客域名
        root         /home/test;  // 你博客源码的路径
    # Load configuration files for the default server block.
    include /etc/nginx/default.d/*.conf;

    location / { // 本地资源根目录
    }

    error_page 404 /404.html;
        location = /40x.html { // 资源不存在页面
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html { // 报错页面
    }
}

设置完成后,输入/usr/sbin/nginx -t检查语法是否有错误,显示syntax is ok说明配置没有问题,然后输入

/usr/sbin/nginx

输入ps -ef | grep nginx,如果出现nginx: worker process说明运行成功。

4. 测试Nginx

/home/test目录下新建一个index.html的文件,里面写入

<html>
  <head>
    <title></title>
    <meta charset="UTF-8">
  </head>
  <body>
    <p>Nginx running</p>
  </body>
</html>

然后服务器中输入curl http://127.0.0.1:80,如果出现写入index.html中的文字,则说明服务端已经配置成功。

5. 其他Nginx操作指令

/usr/sbin/nginx -s reload            # 重新载入配置文件
/usr/sbin/nginx -s reopen            # 重启 Nginx
/usr/sbin/nginx -s stop              # 停止 Nginx
/usr/sbin/nginx -s quit              # 退出 Nginx

6. 配置安全组

如果使用的是阿里云等服务器,还需要在控制台的安全组中开放端口。

开放端口后,浏览器中输入http://ip:port,如果出现Nginx running说明网站已经建好了。


评论
  目录