You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将子域名映射到内部IP?实现通过子域名访问NAS等内网服务

嘿,这个需求太常见了,刚好可以用Apache的反向代理功能完美解决——既让子域名好记,又能复用你现有的HTTPS证书,我给你一步步拆解操作:

实现步骤

1. 先搞定DNS解析

首先得让nas.example.com能指向你的Apache服务器,分两种场景:

  • 如果需要外网访问:去你的域名服务商后台,添加一条A记录,把nas.example.com指向你的家庭公网IP(要是你家是动态IP,记得配合DDNS服务自动更新IP)
  • 如果只需要内网访问:在路由器的内网DNS设置里添加映射,或者在每个设备的hosts文件里写[你的Apache服务器内网IP] nas.example.com

2. 启用Apache的反向代理模块

Apache默认可能没开反向代理相关模块,先在终端执行命令开启:

# 如果你用Debian/Ubuntu系
sudo a2enmod proxy proxy_http proxy_ssl ssl
sudo systemctl restart apache2

# 如果你用RHEL/CentOS系
sudo yum install mod_proxy mod_proxy_http mod_ssl
sudo systemctl restart httpd

这些模块是实现反向代理和HTTPS支持的核心,必须开。

3. 创建子域名的虚拟主机配置

接下来给nas.example.com单独写个配置文件,路径根据系统不同略有区别:

  • Debian/Ubuntu:/etc/apache2/sites-available/nas.example.com.conf
  • RHEL/CentOS:/etc/httpd/conf.d/nas.example.com.conf

把下面的内容复制进去,记得替换掉证书路径和NAS的内网地址:

<VirtualHost *:443>
    ServerName nas.example.com

    # 启用HTTPS,复用你现有的example.com证书
    SSLEngine on
    SSLCertificateFile /path/to/your/example.com.crt  # 替换成你的证书文件路径
    SSLCertificateKeyFile /path/to/your/example.com.key  # 替换成你的私钥文件路径
    # 要是有中间证书,也加上这行
    # SSLCertificateChainFile /path/to/your/chain.crt

    # 核心反向代理配置:把请求转发到NAS的Web端
    ProxyPass / https://192.168.0.200:5001/
    ProxyPassReverse / https://192.168.0.200:5001/

    # 可选但重要:修复请求头部,让NAS能识别反向代理过来的请求
    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-Forwarded-Port "443"

    # 日志配置(方便排查问题)
    ErrorLog ${APACHE_LOG_DIR}/nas.example.com.error.log
    CustomLog ${APACHE_LOG_DIR}/nas.example.com.access.log combined
</VirtualHost>

# 可选:把HTTP请求强制重定向到HTTPS
<VirtualHost *:80>
    ServerName nas.example.com
    Redirect permanent / https://nas.example.com/
</VirtualHost>

4. 验证配置并重启Apache

先检查配置有没有语法错误:

# Debian/Ubuntu
sudo apache2ctl configtest
# RHEL/CentOS
sudo httpd -t

如果输出Syntax OK,就重启Apache让配置生效:

# Debian/Ubuntu
sudo systemctl restart apache2
# RHEL/CentOS
sudo systemctl restart httpd

5. 给NAS做个小配置(避免踩坑)

因为你是反向代理到NAS的HTTPS地址,可能会遇到证书验证问题(比如NAS用的是自签证书):

  • 要是出现502错误,可以在Apache配置里加一行跳过证书验证(仅限内网环境,外网不建议这么做):ProxySSLVerify none
  • 更安全的做法是把NAS的证书导入到Apache的信任存储里
  • 另外,Synology DSM需要在「控制面板-登录门户-高级」里,把你的Apache服务器内网IP加入到「信任的反向代理服务器」列表,不然可能会出现登录异常

最后测试访问

现在直接在浏览器输入https://nas.example.com,就能访问你的NAS Web端了——既用了好记的子域名,又复用了现有的HTTPS证书,完美符合你的需求!

内容的提问来源于stack exchange,提问作者suamikim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:06:05