我有一个从我的网络主机购买的域。我想使用我在本地机器上创建的子域,因为我正在使用的文件无法安装在主机上。
截至目前,子域可以正常工作,但是我必须在最后包含端口才能查看我想要的站点/文件。我正在托管 statping,以防我的主机关闭状态页面仍在运行。我在 Windows 10 机器上托管 statping,statping 有自己的 HTTP 服务器。我正在使用 XAMPP。
我有一个从我的网络主机购买的域。我想使用我在本地机器上创建的子域,因为我正在使用的文件无法安装在主机上。
截至目前,子域可以正常工作,但是我必须在最后包含端口才能查看我想要的站点/文件。我正在托管 statping,以防我的主机关闭状态页面仍在运行。我在 Windows 10 机器上托管 statping,statping 有自己的 HTTP 服务器。我正在使用 XAMPP。
将端口更改为 80 (HTTP) 或 443 (HTTPS)。这些是这些协议的默认端口,当没有指定时,浏览器会隐式假定它们。
听起来您想使用 Apache(在 XAMPP 中)作为Statping的反向代理。
简而言之,您需要一个类似于以下内容的 Apache 虚拟主机:
在哪里:
subdomain.example.com
是您的子域。host:port
是 Statping 主机的域名或 IP,以及运行 Statping 的端口。笔记
如果 Statping 与 Apache (XAMPP) 在同一本地主机上运行,您可以简单地使用
127.0.0.1
或主机的本地 IP 作为host
值。为了正常工作,您需要
ProxyPass
在Apache 中启用。您也可能希望/需要启用,以及。特别是,在完成 Statping 设置后,启用可以避免潜在的(次要)代理错误。这些都应该在您的主要 Apache 配置中(例如):ProxyPassReverse
mod_proxy
mod_proxy_html
mod_proxy_http
mod_proxy_http2
mod_proxy_http2
httpd.conf
使用反向代理时,Statping 似乎在子域的根目录中工作得最好(由于它形成 URL 的方式)。因此,如果您需要在同一台机器上运行第二个 Statping 实例,您应该使用第二个子域。
如果上面的虚拟主机条目是您唯一的虚拟主机,Apache 会将所有请求转发到该主机。更一般地,如果请求 Apache “不知道”的主机,它会将请求重定向到第一个定义的虚拟主机。显然,如果 Statping 不知道它被要求提供的 URL,这将是一个问题。
您可以通过在上面列出的虚拟主机之前定义另一个虚拟主机作为“默认”主机来解决此问题,该主机不会阻止对例如的访问
phpmyadmin
:补充说明
上面的第一个虚拟主机应该适用于
localhost
,127.0.0.1
无论 PC 的本地 IP 是什么(例如192.168.1.x
)。有一个类似于上面的“默认”虚拟主机的一个小警告是,它可以(可能)提供给连接到例如的人
subdomain.example.com
(假设 Apache 发生主机名错误)。在上面的示例中,是运行 Statping
Redirect permanent /subdomain
的组合的可选快捷方式。host:port
这意味着您可以键入 eg192.168.1.x/subdomain
并在本地访问 Statping (host:port
),而无需实际摆弄您的hosts
文件或本地 DNS。Redirect permanent /subdomain
将在地址栏中显示端口,就像您host:port
在浏览器中手动键入一样。与
ProxyPass
给定的指令不同subdomain.example.com
,如果Redirect permanent /subdomain
使用本地地址,它只能在本地使用。但是,您也可以使用公共 IP 或(子)域名。