我有一些文件从不在我的服务器上的另一个域获取数据。例如从www.example.com/mypdf.pdf 我无法控制此功能,但我不想从 example.com 获取 pdf 文件,而是希望它从 mydomain.com/mypdf.pdf 获取文档。
答案1
您可以使用 ngx_http_rewrite_module 模块 尤其是 return 指令。
这是一个将客户端重定向到新域名的一个非常简单的示例:
server {
listen 80;
listen 443 ssl;
server_name www.old-name.com;
return 301 $scheme://www.new-name.com$request_uri;
}
这
听
指令意味着该server{}
块适用于 HTTP 和 HTTPS。
这
服务器名称
指令匹配带有域名的请求URL www.old‑name.com
。
该return
指令告诉 NGINX 停止处理请求并立即将代码301
(永久移动)和指定的重写 URL 发送给客户端。
新的 URL 使用两个 NGINX 变量从原始请求 URL 中捕获:
$scheme
是协议(http 或 https)$request_uri
是包含参数的完整 URI。
有关详细信息,请参阅 创建 NGINX 重写规则。
答案2
您所描述的基本上是一个链接。
您可以在网站 HTML 中创建指向外部资源的链接:
<a href="https://www.example.com/mypdf.pdf">link text</a>