猿问

iFrame 是否可以根据寻址域进行集成?

首先我想提一下,我通常不是开发人员。请稍微放纵一下;-)


我维护多个客户的网站,这些网站由提供商托管。但是,您只能从提供商那里获得一个子域,该子域也会显示在地址栏中。为了显示自己的域名,我考虑将域名重定向到自己的服务器,并通过 iFrame 集成外部网站。


然而,我的服务器并不是一台主要的网络服务器,仅设计用于托管一个网站。因此,Web 服务器始终使用其默认的 index.html 进行响应。


您是否知道如何根据调用的域在此文件中包含相应的 iFrame,并且如果可能的话还可以更改头部的标题?预先非常感谢您的帮助!


当前的index.html看起来像这样:


<html>


<head>

      <title>Web Client</title>

</head>


<style>

body {

      margin: 0;

      padding: 0;

}

body, iframe {

      width: 100%;

      height: 100%;

}

iframe {

      border: 0;

}

</style>


<body>

      <iframe src="https://sub.domain.tld/"/>

</body>


</html> 


素胚勾勒不出你
浏览 148回答 1
1回答

函数式编程

您可以使用 javascript 尝试类似的操作:<html><head>&nbsp; &nbsp; <title>Web Client</title></head><style>&nbsp; &nbsp; body {&nbsp; &nbsp; &nbsp; &nbsp; margin: 0;&nbsp; &nbsp; &nbsp; &nbsp; padding: 0;&nbsp; &nbsp; }&nbsp; &nbsp; body, iframe {&nbsp; &nbsp; &nbsp; &nbsp; width: 100%;&nbsp; &nbsp; &nbsp; &nbsp; height: 100%;&nbsp; &nbsp; }&nbsp; &nbsp; iframe {&nbsp; &nbsp; &nbsp; &nbsp; border: 0;&nbsp; &nbsp; }</style><body>&nbsp; &nbsp; <iframe id="website" src=""></iframe></body><script type="text/javascript">&nbsp; &nbsp; //Get the current URL&nbsp; &nbsp; var currentURL = window.location.href;&nbsp; &nbsp; //Get the subdomain from URL&nbsp;&nbsp; &nbsp; var hostnameURL = currentURL.replace(/(http[s]*\:\/\/)/gi, '').split("/")[0];&nbsp; &nbsp; //Set the page title&nbsp; &nbsp; document.title = hostnameURL;&nbsp; &nbsp; //Transform subdomain to alphaNumeric&nbsp; &nbsp; var alphaNumericSubDomainName = hostnameURL.replace(/[^\w]/gi, '');&nbsp; &nbsp; //Set the subdomain to the iframe (don't forget to change the domain name below)&nbsp; &nbsp; document.getElementById("website").src = "https://"+ alphaNumericSubDomainName + ".domain.tld";</script></html>&nbsp;我首先获取当前的 URL。然后我获取 URL 的主机名(不带 TLD 的域)。我使用这个主机名来设置标题。然后我删除主机名中的特殊字符并将此清理后的主机名连接为子域。最后,我将这个新 URL 作为 Iframe 的源 URL。
随时随地看视频慕课网APP

相关分类

Go
我要回答