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
说明网站已经建好了。