一、Nginx服务器配置实例
任务:
1.有如下访问:
http://192.168.32.129:8081/server1/location1
访问的是:index_sr1_location1.html
http://192.168.32.129:8081/server1/location2
访问的是:index_sr1_location2.html
http://192.168.32.129:8082/server2/location1
访问的是:index_sr2_location1.html
http://192.168.32.129:8082/server2/location2
访问的是:index_sr2_location2.html
2.如果访问的资源不存在:
返回自定义的404页面
3.将/server1和/server2的配置使用的不同的配置文件分割
将文件放到/usr/share/nginx/html目录下,然后使用include进行合并
4.为/server1和/server2各自创建一个访问的日志文件
实现:
1)先将所要用到的配置文件创建并放在/usr/share/nginx/html目录下
使用mkdir,touch,vim命令
按照任务需求,需要创建以下树结构目录内容。
目录如下:
2)任务需求中提到了/server1和/server2使用不同配置文件分割
因此在/etc/nginx/conf.d目录下创建server1.conf和server2.conf两个文件,并分别输入以下内容
server1.conf文件
server {
#配置端口
listen 8081;
server_name localhost;
access_log /usr/share/nginx/html/server1/logs/access.log server1;
location /server1/location1{
root /usr/share/nginx/html;
index index_sr1_location1.html;
}
location /server1/location2{
root /usr/share/nginx/html;
index index_sr1_location2.html;
}
#访问资源不存在,跳转到指定404页面
error_page 404 /404.html
location =/404.html{
root /usr/share/nginx/html;
index 404.html;
}
}
server2.conf文件
server {
#配置端口
listen 8082;
server_name localhost;
access_log /usr/share/nginx/html/server1/logs/access.log server1;
location /server2/location1{
root /usr/share/nginx/html;
index index_sr2_location1.html;
}
location /server2/location2{
root /usr/share/nginx/html;
index index_sr2_location2.html;
}
#访问资源不存在,跳转到指定404页面
error_page 404 /404.html
location =/404.html{
root /usr/share/nginx/html;
index 404.html;
}
}
完成上述内容后,检测nginx.conf是否有语法错误,结果发现报如下错误
这是因为没有在http块中配置log_format,应该在http块中添加下面两行
log_format server1 '--------->server1 access log format';
log_format server1 '--------->server1 access log format';
检测,重启nginx
3.实例测试
1)访问http://192.168.32.129:8081/server1/location1,显示如下,表明配置正确
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pNJIBgli-1623399091159)(C:\Users\zyy\AppData\Roaming\Typora\typora-user-images\image-20210605194537140.png)]
2)执行tail -f /usr/share/nginx/html/server1/logs/access.log
访问日志,显示