更改浏览器URL栏文字

Change the browser URL bar text

我在托管服务提供商中拥有一个域(只是域)。此域指向另一个网址:

domain.com-->anotherdomain.dom/path

另一方面,我已将我的域添加到我的 Cloudflare 帐户,如下所示:

domain.com-->Cloudflare-->anotherdomain.dom/path

问题是在输入domain.dom后,浏览器URL栏中的URL文本是anotherdomain.dom/path,我需要它是domain.com ].

浏览器URL栏里可以有domain.com吗?我是否必须在 .htaccess 文件或 anotherdomain.com 文件中编写一些代码?我是否必须在 Cloudflare 中执行某些操作(可能使用 "workers")?

目前看来,您的域 domain.com 已设置为 重定向 。当用户在浏览器中访问 domain.com 时,服务器 (Cloudflare) 会回复一条消息:"Please go to anotherdomain.com/path instead." 然后浏览器的行为就像用户在地址栏中实际键入 anotherdomain.com/path 一样。

听起来您想要的是 domain.com 成为 代理。当收到针对 domain.com 的请求时,您希望 Cloudflare 从 anotherdomain.com/path 获取内容,然后 return 该内容以响应原始请求。

为此,您需要使用 Workers。 Cloudflare Workers 允许您编写任意 JavaScript 代码来告诉 Cloudflare 如何处理您域的 HTTP 请求。

这是一个实现您想要的代理行为的 Worker 脚本:

addEventListener('fetch', event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  // Parse the original request URL.
  let url = new URL(request.url);

  // Change domain name.
  url.host = "anotherdomain.org";
  // Add path prefix.
  url.pathname = "/path" + url.pathname;

  // Create a new request with the new URL, but
  // copying all other properties from the
  // original request.
  request = new Request(url, request);

  // Send the new request.
  let response = await fetch(request);

  // Use the response to fulfill the original
  // request.
  return response;
}