一、配置本机hosts文件
# 路径:
# Windows: C:\Windows\System32\drivers\etc\hosts
# Linux/macOS: /etc/hosts
# linux一键追加
cat <<EOF | sudo tee -a /etc/hosts
192.168.110.203 www.local.com
192.168.110.203 www.wiki.local.com
EOF
# 手动在hosts中添加如下两条记录:
192.168.110.203 www.local.com
192.168.110.203 www.wiki.local.com
#1. Nginx 重新载入配置文件命令:在大多数 Linux 系统(包括 CentOS)上,可以使用以下命令重新载入 Nginx 配置文件:
sudo nginx -s reload
#2. 刷新 DNS 缓存:
#CentOS:在 CentOS 上,刷新 DNS 缓存的命令取决于使用的 DNS 解析服务。如果是 systemd-resolved,可以使用以下命令:
sudo systemctl daemon-reload
sudo systemd-resolve --flush-caches
#如果是 nscd(名称服务缓存守护程序),可以使用:
sudo systemctl restart nscd
#Windows:在 Windows 上,刷新 DNS 缓存的命令是:
ipconfig /flushdns
二、检查端口占用情况
#windows
netstat -ano | findstr ":80.*LISTENING"
#如果存在可通过命令关闭
tasklist /FI "PID eq [出现的PID]"
#linux
ss -tlnup | grep 80
kill -9 pid
三、配置文件
server {
listen 8080;
server_name nginx.local.com;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 8080;
server_name wiki.local.com;
location / {
root C:/Users/Administrator/Downloads/nginx-1.26.3/nginx-1.26.3/wiki;
index wiki.html wiki.htm;
}
# 错误页面配置
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
四、配置文件示例
[root@vision ~]# cat /docker-opt/web/labelerv3-web/docker-compose.yml
version: "3"
services:
labeler-web:
image: nginx
container_name: labeler3-web
ports:
- "9583:9583"
volumes:
- /docker-opt/web/labelerv3-web/dist/:/usr/share/nginx/html/
- /docker-opt/web/labelerv3-web/default.conf:/etc/nginx/conf.d/default.conf
- /etc/localtime:/etc/localtime:ro
- /docker-opt/web/labelerv3-web/certs:/etc/nginx/ssl
restart: always
[root@vision ~]# cat /docker-opt/web/labelerv3-web/default.conf
server {
listen 9583 ssl;
server_name localhost;
ssl_certificate /etc/nginx/ssl/cert.pem; # 证书路径
ssl_certificate_key /etc/nginx/ssl/key.pem; # 私钥路径
client_header_buffer_size 512k;
large_client_header_buffers 4 512k;
client_max_body_size 1024m;
#charset koi8-r;
access_log /var/log/nginx/host.access.log main;
error_log /var/log/nginx/error.log error;
gzip on;
gzip_min_length 100k;
gzip_buffers 4 16k;
gzip_comp_level 8;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /time {
default_type text/plain;
return 200 "$time_iso8601";
}
location ^~/api/ {
proxy_read_timeout 3600s;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
rewrite ^/api/(.*)$ /$1 break;
proxy_pass http://192.168.8.101:8107;
}
location ^~/websocket/ {
proxy_read_timeout 3600s;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Upgrade websocket;
proxy_set_header Connection Upgrade;
rewrite ^/websocket/(.*)$ /websocket/$1 break;
proxy_pass http://192.168.8.101:8107;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}