目录
- 基本配置
- 设置用户
- 工作衍生进程数
- 错误日志存放路径
- pid文件存放路径
- 设置最大连接数
- http->server
- gzip
- 字符编码
- nginx的基本格式
- 实战配置
- 虚拟主机配置
- 开始配置虚拟主机的ngix配置
- 查看日志是否有内容
基本配置
设置用户
设置用户,可以指明哪个用户可以使用nginx,nobody是低权限用户,提高用户的安全性。有“#”代表不需要设置用户。
user nobody;
工作衍生进程数
工作衍生进程数, 1代表CPU的核数是1,也可以是核数的double(这个是比较合适的),但并不是越高越好。
worker_processes 1;
错误日志存放路径
error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info;
pid文件存放路径
什么是pid文件呢,pid是控制系统的重要文件
pid logs/nginx.pid;
设置最大连接数
events {
worker_connections 1024;
}
http->server
一个http 中可以有多个server
gzip
从http的内容来看,是根网页相关的配置,这里首先说下http配置中的压缩配置gzip,gzip的作用是将访问的网页内容压缩再进行网络传输,当然你得先开启这个配置 (gzip on;)开启后一般压缩的大小在原大小的30%一下,也就大大提高了我们的访问速率。
字符编码
通过charset来设置
nginx的基本格式
user nobody;
worker_processes 1;
events {
worker_connections 1024;
}
http {
server {
}
server {
}
...
}
实战配置
虚拟主机配置
将一台服务器虚拟成多台子服务器(虚拟化技术,后续学下这种虚拟划分),通过一台nginx服务器来对这些虚拟主机进行配置。
配置其中一台设备的IP地址
输入命令查看IP信息ifconfig,可以从下图看出eth0的IP为192.168.136.131,广播地址是192.168.136.255, 子网掩码是255.255.255.0
先通过命令来修改eth0的IP地址:sudo ifconfig eth0 192.168.136.130 netmask 255.255.255.0
给eth0配置两个子设备,这里要指明广播地址broadcast 192.168.136.255
sudo ifconfig eth0:1 192.168.136.196 broadcast 192.168.136.255 netmask 255.255.255.0
sudo ifconfig eth0:2 192.168.136.197 broadcast 192.168.136.255 netmask 255.255.255.0
开始配置虚拟主机的ngix配置
配置时,不建议修改默认的nginx配置,这样会不安全,因为当修改这个默认文件修改错了的时候,整台nginx服务就都会挂掉,所以我们重新建个文件来进行配置,然后再加载进去。
http {
server {
listen 192.168.136.196:80; //IP地址和端口
server_name 192.168.136.196;//服务名称
access_log logs/server1.access.log combined; //日志文件存放路径,使用的格式是默认的combined
location /
{
index index.html index.htm; //默认首页的设置,访问192.168.136.196这个服务会查看有没有index文件,没有index文件就会再去查找 index.html,还没有再去找ndex.htm
root html/server1;//设置IP地址绑定到哪个目录,root不代表系统根目录,而是nginx安装的目录,比如我的nginx目录是 /etc/nginx 则访问的是是/etc/nginx/html/server1
}
}
}
同样的我们将建的两个子设备的server写好,访问首页的路径,作为区分,里面内容不一样,下面是配置后,nginx重启后的效果,
我这里的html路径是:/usr/share/nginx/html
log路径:/usr/share/nginx/logs
查看日志是否有内容
至此,nginx的基础配置已完,后续会更加详细的介绍nginx的使用->限流,反向代理等深入的知识点
原文地址:https://www.cnblogs.com/levcon/p/9350969.html