【问题标题】:How to redirect a domain to a different IP if accessed by a specific port?如果通过特定端口访问,如何将域重定向到不同的 IP?
【发布时间】:2016-04-03 19:08:27
【问题描述】:

我想知道如何将我拥有的子域(例如 mydomain.dx.am)重定向到由特定端口访问的另一个外部 IP 地址。

换句话说,如果您输入此域,它会将您带到直接连接到该域的托管网站(主机是 AwardSpace)。但是,如果您通过特定端口(例如通过 minecraft 的 25565)访问此域,它会将您重定向到不同的外部 IP(XX.XX.XX.XX)。我尝试过其他服务(如 NO-IP 和免费服务),但它们不适用于您已经 OWNSUBDOMAINS 并且仅适用于 SPECIFIC 重定向港口

我不希望子域的所有端口都重定向到不同的外部 IP 地址,只需要 1 个特定端口

是否有任何在线服务或特定的方式来做到这一点?我可以对 .htaccess 文件做些什么来创建这个重定向?

我可以访问站点/主机的文件和 .htaccess(直接在文件上或通过主机自动访问)。我似乎无法找到对 DNS 区域文件的访问权限,并且更改名称服务器确实有问题,并且大部分时间都因不明原因而失败......如果有某种方法可以用我可用的东西来做到这一点,那么请让我知道!谢谢!

这是我当前的 .htaccess 文件(没有问题):

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

【问题讨论】:

  • 您有权创建/修改虚拟主机吗?
  • 不,很遗憾,我认为没有办法创建虚拟主机,最接近的方法是创建 VPS 服务器

标签: .htaccess redirect networking dns ip


【解决方案1】:

这将允许您根据传入端口进行重定向,但假设 apache 正在侦听所有端口(将 {PORT} 替换为您要重定向的端口):

RewriteEngine On
RewriteCond  %{SERVER_PORT} ^{PORT}$
RewriteRule ^(.*)$ http://www.redirect.com [L, R=301]

部分答案来自.htaccess redirect to error page if port is not 80

【讨论】:

  • 你应该发布你的 htaccess 文件的内容然后描述它不工作的原因
  • 我会将这个放在 .htaccess 文件的什么位置?我必须用任何东西替换 {SERVER_PORT} 吗?这会与文件的当前内容冲突吗?
  • 不,不要管那个部分。如果端口匹配,则将其放在您有兴趣重定向的子域的 .htaccess 中的 &lt;ifmodule&gt; 节点之后
  • 我的 .htaccess 现在看起来像这样:.htaccess file,但现在重定向不起作用(说无法连接到服务器)并且网站本身给出了错误 500
  • 这是 500 错误:pastebin.com/5Q2jgqXd。我似乎找不到它所声明的服务器错误日志...
猜你喜欢
  • 1970-01-01
  • 2013-07-02
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 2014-11-12
  • 1970-01-01
  • 2015-03-15
  • 1970-01-01
相关资源
最近更新 更多