为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
素胚勾勒不出你 2023-08-21 16:28:18
首先我想提一下,我通常不是开发人员。请稍微放纵一下;-)我维护多个客户的网站,这些网站由提供商托管。但是,您只能从提供商那里获得一个子域,该子域也会显示在地址栏中。为了显示自己的域名,我考虑将域名重定向到自己的服务器,并通过 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> 
查看完整描述

1 回答

?
函数式编程

TA贡献1807条经验 获得超9个赞

您可以使用 javascript 尝试类似的操作:


<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 id="website" src=""></iframe>

</body>

<script type="text/javascript">

    //Get the current URL

    var currentURL = window.location.href;

    //Get the subdomain from URL 

    var hostnameURL = currentURL.replace(/(http[s]*\:\/\/)/gi, '').split("/")[0];

    //Set the page title

    document.title = hostnameURL;

    //Transform subdomain to alphaNumeric

    var alphaNumericSubDomainName = hostnameURL.replace(/[^\w]/gi, '');

    //Set the subdomain to the iframe (don't forget to change the domain name below)

    document.getElementById("website").src = "https://"+ alphaNumericSubDomainName + ".domain.tld";

</script>

</html> 

我首先获取当前的 URL。然后我获取 URL 的主机名(不带 TLD 的域)。


我使用这个主机名来设置标题。然后我删除主机名中的特殊字符并将此清理后的主机名连接为子域。


最后,我将这个新 URL 作为 Iframe 的源 URL。


查看完整回答
反对 回复 2023-08-21
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信