SSL证书与IP地址
对于大多数使用场景,我们通常为域名(如 example.com)获取SSL证书,而不是直接为IP地址获取。
1. URL重定向
一些域名提供商提供URL重定向服务。例如,你可以将 example.com 重定向到 http://example.com:8080。但在这种情况下,用户在浏览器中看到的URL将是带有端口的地址。
2. 使用反向代理
使用如 Nginx 或 Apache 这样的服务器来作为反向代理。
反向代理的概念
当客户端发送请求到服务器时,反向代理服务器将这些请求转发到一个或多个后端服务器。后端服务器再将数据返回给代理服务器,再由代理服务器返回给客户端。这种方式为应用程序提供了一个额外的保护层,还可以实现负载均衡、缓存等功能。
Nginx 作为反向代理
当用户访问 example.com 时,Nginx 会代替用户将请求转发到 localhost:8080。
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
配置文件解释
server { ... }: Nginx的server块,定义服务器配置。listen 80;: Nginx监听的端口,这里是HTTP的默认端口。server_name example.com;: 响应的域名。location / { ... }: 定义如何响应特定的URL路径。这里/是匹配所有路径。proxy_pass: 指定请求应被代理到的地址。proxy_set_header: 修改或添加在代理请求中的头部信息。
在 CentOS 中修改 Nginx 配置
Nginx的默认配置文件在 /etc/nginx/nginx.conf,但主配置文件通常会包含 /etc/nginx/conf.d/ 下的其他配置文件。
-
使用文本编辑器打开或创建配置文件:
sudo nano /etc/nginx/conf.d/example.com.conf -
粘贴并修改配置。
-
保存并退出编辑器。
-
测试Nginx配置:
sudo nginx -t如果没有错误,会显示配置正确。
-
重新加载Nginx:
sudo systemctl reload nginx
本文讨论了为何通常为域名获取SSL证书而非IP地址,并详细介绍了URL重定向、反向代理(以Nginx为例)的概念,以及如何在CentOS中通过Nginx配置文件为example.com设置反向代理。

被折叠的 条评论
为什么被折叠?



