我有学校管理系统,学校所有者已注册。我为他们提供了一个子域名,例如school1.mysite.com
。
到目前为止一切都很好,但有一所学校的所有者希望将其放在自己的域名上(school1.com
)。
我尝试将 school1.com 指向 url( school1.mysite.com
),它在主页上运行良好,但当我通过单击某个链接导航到另一个页面时,我注意到 urlschool1.com
实际上仍然school1.mysite.com
显示在 iframe 内。
问题 1:是否可以将一个域指向另一个域的子域,我在导航页面上的位置和查询字符串附加到此域,并且始终将此域保留在 url 中,而不仅仅是重定向?
问题 2:如果可能的话,有哪些可能的解决方案,哪一个是最好的?
答案1
这个问题指出了你们这边的能力问题——结构性问题。我会检查运行手册和 SOP。
我有学校管理系统
我只能假设那是定制软件,因为你没有给产品命名。你被编程了。不知何故(例如:你显然能力不足)。编程没有为这种情况做好准备,所以你的程序员必须修复它。
我尝试将 school1.com 指向 url(school1.mysite.com),它在主页上运行良好,但当我通过单击某些链接导航到另一个页面时,我注意到如果在 iframe 内显示,url 仍然是 school1.com,实际上是 school1.mysite.com。
好吧,既然这是你的软件,你就不应该尝试它 - 而是测试它。在测试环境中。
这里明显的问题是,页面之间的链接似乎以某种方式被硬编码 - 相对链接(href =“/blabla”)永远不会解析到不同的主机名。非相对链接仅在更改域(切换学校或管理站点)时必须使用,但可以在站点内避免使用 - 这也节省了一些带宽。不知何故,您的编程不使用相对 URL,并且没有考虑到应使用自定义域的事实。
典型的失败。
无论是来自您的程序员,还是您的支持(向客户授予未实现的功能,现在已经出售了不受支持的配置)。这不是我第一次看到这种情况 ;)
无论您做什么,都需要有人开始研究代码并修复它,并使自定义域成为受支持的场景。
您可以在新域下使用代理,包括 http 文本重写(更改页面中的所有链接),但这就像在损坏/不受支持的配置上进行的非常复杂的黑客攻击。
我可以问一下为什么这个问题会在这里结束?这是一个典型的场景,我希望首席开发人员能够介入。他应该非常清楚所做的妥协和固有的局限性——尤其是代码中域名处理这样基本的东西。任何试图设置它的人都应该意识到这不是一个正常的设置,他们的操作手册也没有涵盖它。而且由于它没有被涵盖,显然是一个偏差,它应该导致阅读文档,然后(因为它在那里不受支持)升级。对上述首席开发人员来说。
答案2
您是否要在 school1.com 上创建一个映射到 school1.domain.com 的 CNAME DNS 记录?
所有 DNS 提供商都允许您设置 CNAME 记录。
如果您已经尝试过,请原谅。