需求分析
需求一:
当主机访问http://localhost:8081:/server1/location1时,访问index_sr1_location1.html
当主机访问http://localhost:8081:/server1/location2时,访问index_sr1_location2.html
当主机访问http://localhost:8081:/server2/location1时,访问index_sr2_location1.html
当主机访问http://localhost:8081:/server2/location2时,访问index_sr2_location2.html
需求二:
如果访问的页面不存在,则返回自定义的404页面
需求三:
将server1和server2的配置使用不同的配置文件分割
需求四:
为server1和server2各自创建访问日志
文件配置
①准备相关文件
创建用户www,然后创建上图所示文件结构
conf.d 用于创建server1和server2的nginx服务配置
myweb用于存储静态资源文件
404.html文件用来返回访问错误的内容
server1和server2目录中的logs用来存储访问日志
②配置nginx主配置文件
全局块配置
#更改用户为www
user www;
#设置开启进程为2
worker_processes 2;
#定义错误日志路径
error_log /var/log/nginx/error.log;
#定义nginx运行的pid文件
pid /var/run/nginx.pid
#开启nginx以辅助进程运行功能
daemon on;
events块配置
#开启序列化处理功能
accept_mutex on;
#设置nginx进程可以同时接受多个请求
multi_accept on;
#设置最大请求数量为1024
worker_connections 1024;
#设置使用算法
use epoll;
http块
#引入mime.type文件类型
include mime.type;
#设置文件默认类型
default_type application/octet-stream;
#开启sendfile(),加快进程的处理
sendfile on;
#设置长连接时间
keepalive_timeout 65;
#设置自定义日志配置
log_format server1 'this is log server1';
log_format server2 'this is log server2';
#引入自定义配置文件路径
include /home/www/conf.d/*.conf;
③配置server服务文件
server1.conf文件配置
server {listen 8081;server_name localhost;access_log /home/www/myweb/server2/logs/access.log server1;location /server1/location1 {root /home/www/myweb;index index_sr1_location1.html;}location /server1/location2 {root /home/www/myweb;index index_sr1_location2.html;}error_page 404 /404.html;location = 404.html {root /home/www/myweb;index 404.html;}}
server2.conf文件配置
server {listen 8082;server_name localhost;access_log /home/www/myweb/server2/logs/access.log server2;location /server2/location1 {root /home/www/myweb;index index_sr2_location1.html;}location /server2/location2 {root /home/www/myweb;index index_sr2_location2.html;}error_page 404 /404.html;location = 404.html {root /home/www/myweb;index 404.html;}}
④重启nginx服务
#检查nginx配置是否有误
nginx -t
#重新加载nginx配置
systemctl reload nginx