发布时间:2025-06-24 17:14:42 作者:北方职教升学中心 阅读量:067
你可以使用以下命令:
sudosemanage port -a-thttp_port_t -ptcp 8082
HTTPS 配置:如果你希望为 admin.dhl101
配置 HTTPS,可以使用 mkcert 工具生成自签名证书。
返回结果:一旦找到目标 IP 地址,DNS 服务器会将结果返回给客户端,浏览器就可以使用该 IP 地址与目标服务器建立连接。
192.168.154.101 api.example.com192.168.154.101 admin.example.com
macOS 和 Linux
打开终端,并使用文本编辑器(如 nano, vim, emacs 等)编辑
/etc/hosts
文件。sub2.example.com
等。server_name
的作用server_name
指令告诉 Nginx,在接收到 HTTP 请求时,如果请求头中的Host
字段匹配指定的域名,则该请求应由这个特定的server
块来处理。你可以使用以下命令检查和配置防火墙规则:sudoufw allow 8082/tcp # 对于 UFWsudofirewall-cmd --add-port=8082/tcp --permanent# 对于 firewalldsudofirewall-cmd --reload
SELinux 设置(适用于 CentOS/RHEL):如果你的系统启用了 SELinux,确保 Nginx 有权限监听非标准端口。因此,DNS 解析的结果(即域名对应的 IP 地址)决定了请求会被发送到哪台服务器,而 Nginx 则根据
server_name
指令进一步确定具体的处理逻辑。DNS 与 Nginx 的关系
Nginx 使用
server_name
指令来匹配 HTTP 请求中的Host
头字段,以确定哪个server
块应该处理该请求。通配符和正则表达式
server_name
支持通配符和正则表达式,以便更灵活地匹配域名。如果你有更多问题或需要进一步的帮助,请随时查阅 Nginx 官方文档或寻求社区支持。
默认服务器
如果你希望某个
server
块作为默认服务器(即在没有其他服务器块匹配时处理请求),可以使用以下方式:- 空字符串:
server_name "";
表示这个server
块是默认服务器。
主机文件的作用
在开发环境中,我们通常使用 主机文件(
/etc/hosts
或C:\Windows\System32\drivers\etc\hosts
)来模拟 DNS 解析。server { listen 80; server_name *.example.com; root /var/www/example.com; index index.html; location / { try_files $uri $uri/ =404; }}
- 空字符串:
后缀通配符:Nginx 不直接支持后缀通配符,但可以通过正则表达式实现类似功能。假设你已经在主机文件中设置了
192.168.154.101 example.com
,现在需要添加api.example.com
和admin.example.com
。例如:server { listen 80; server_name example.com www.example.com; root /var/www/example.com; index index.html; location / { try_files $uri $uri/ =404; }}
这样,Nginx 会将对
example.com
和www.example.com
的请求都路由到这个server
块。通配符
前缀通配符:
*.example.com
可以匹配任何以.example.com
结尾的子域名,如sub1.example.com
、如果有任何疑问或需要进一步的解释,请随时联系我!