添加 Nginx结合内网穿透配置二级域名.md
This commit is contained in:
parent
2414fc9405
commit
bd9e3a217f
81
Nginx结合内网穿透配置二级域名.md
Normal file
81
Nginx结合内网穿透配置二级域名.md
Normal file
@ -0,0 +1,81 @@
|
||||
### 一键运行脚本
|
||||
|
||||
```
|
||||
sudo bash -d 域名 -p 内网穿透的端口号
|
||||
```
|
||||
|
||||
### 脚本内容
|
||||
|
||||
```
|
||||
#!/bin/bash
|
||||
|
||||
# 解析命令行参数
|
||||
while getopts d:p: flag
|
||||
do
|
||||
case "${flag}" in
|
||||
d) DOMAIN=${OPTARG};;
|
||||
p) SERVER_PORT=${OPTARG};;
|
||||
?)
|
||||
echo "错误:未知参数。"
|
||||
echo "用法:$0 -d example.com -p 8080"
|
||||
exit 1;;
|
||||
esac
|
||||
done
|
||||
|
||||
# 检查 DOMAIN 是否已提供
|
||||
if [ -z "$DOMAIN" ]; then
|
||||
echo "错误:必须使用 -d 参数指定域名。"
|
||||
echo "用法:$0 -d example.com -p 8080"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 检查 SERVER_PORT 是否已提供
|
||||
if [ -z "$SERVER_PORT" ]; then
|
||||
echo "错误:必须使用 -p 参数指定端口号。"
|
||||
echo "用法:sudo bash -d example.com -p 8080"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
FILE="/etc/nginx/sites-available/$DOMAIN"
|
||||
LINK="/etc/nginx/sites-enabled/$DOMAIN"
|
||||
|
||||
# 创建站点配置文件
|
||||
sudo tee "$FILE" > /dev/null <<EOF
|
||||
server {
|
||||
listen 80;
|
||||
server_name $DOMAIN;
|
||||
|
||||
|
||||
location / {
|
||||
proxy_pass http://127.0.0.1:$SERVER_PORT;
|
||||
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-Forwarded-Proto \$scheme;
|
||||
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade \$http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
|
||||
proxy_read_timeout 300s;
|
||||
proxy_send_timeout 300s;
|
||||
|
||||
proxy_buffering on;
|
||||
proxy_buffer_size 128k;
|
||||
proxy_buffers 8 256k;
|
||||
proxy_busy_buffers_size 256k;
|
||||
proxy_max_temp_file_size 100m;
|
||||
}
|
||||
|
||||
# 日志配置
|
||||
access_log /var/log/nginx/${DOMAIN}.access.log;
|
||||
error_log /var/log/nginx/${DOMAIN}.error.log;
|
||||
}
|
||||
EOF
|
||||
|
||||
# 创建软链接并重启 Nginx
|
||||
sudo ln -sf "$FILE" "$LINK"
|
||||
sudo systemctl reload nginx
|
||||
|
||||
echo "Nginx 配置已为域名 $DOMAIN 创建,代理到端口 $SERVER_PORT,并已重载服务。"
|
||||
```
|
Loading…
Reference in New Issue
Block a user