我在本地托管一个网站 (http://gfd.us
),我想将其公开给互联网。
我有一个公开可用的二级域名(来自 NoIP
服务):http://myname.ddns.net
指向 Default Web Site
在我的 IIS 服务器上。
这里的问题是内部网站也需要二级域名,即http://secondname.gfd.us
。 .
现在为了解决这个问题,我正在使用 mod_rewrite
模块通过绑定(bind)到特定端口形成 IIS,即mod_rewrite
规则参数
(.*)
{SERVER_PORT} = 91
http://secondname.gfd.us/{R:1}
当我打开
http://myname.ddns.net:91
时,一切正常它实际上会打开内部网站http://secondname.gfd.us
我在这里不喜欢的是,如果我需要为暴露的网站使用不同的二级域名,即
http://coolname.gfd.us
,那么我需要将另一个规则绑定(bind)到另一个端口。我想让这个更有活力。我试图将 Pattern 更改为这样
(.*)\gfd_(.*)
并且重写 URL 为 http://{R:2}.gfd.us/{R:1}
,但它没有按预期工作。当我打开 http://myname.ddns.net:91/gfd_coolname
站点本身以所需的二级域名打开,但所有 CSS、JS 和图像文件都指向错误的 URL,因为它们没有被正确重写。使用
mod_rewrite
可以实现吗? ?
最佳答案
您可能应该放弃 mod_rewrite
并配置许多 Host-Headers对于这个网站,
所以连同 gfd.us
您应该使用主机头 myname.ddns.net
为相同的 IP 和文件位置添加配置
看起来你也可以use wildcard since IIS10如果你想。
关于mod-rewrite - 公开内部网站 - mod_rewrite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34127548/