我已经通过编辑虚拟主机将WAMP配置为通过LAN工作。所以我的所有系统都可以通过键入192.168.1.14/rise来访问localhost / rise。
是否有一种方法可以使用,可以将URL格式192.168.1.14/rise重写为192.168.1.14,而无需在最后输入rise文件夹,或者至少输入专用IP地址。
原因是,当我在局域网上键入IP地址时,如果我选择不键入/上升,我仍然可以访问“服务器配置”页面。我想通过输入专用的ipaddress来访问同一个上升文件夹。
我使用的是Windows 10,没有服务器。它只是一个拥有6台计算机的家庭网络
感谢您的阅读。
答案 0 :(得分:0)
虽然你问的肯定是可能的,但这是一个值得怀疑的方法,可能会有更好的解决方案。然而,接一个接一个:
显然,你需要你的系统同时收听多个IP地址。此外,所有请求客户端都必须知道这些地址。从技术角度来看,这是可能的,但取决于您的本地网络拓扑,主要取决于如何管理本地网络中的地址。您可能必须为此配置手动地址,因为没有DHCP服务器会将多个地址分配给单个请求客户端。完成后,您可以在apache http服务器中配置多个主机。与您已经完成的相似。实际上,基于地址的虚拟主机是处理单个(http)服务器分离服务的请求的传统方式。看一下虚拟主机的文档,显然在那里解释了详细信息。
该设置的替代方案是基于名称的虚拟主机。对于像你这样的场景,这些都是事实上的标准。我建议你使用这种方法而不是你原来的想法。为此,不需要为系统分配多个IP地址。相反,您使用不同服务的名称解析("文件夹"在您的方案中),因此您使用主机名,如" folder1.local"," folder2.local" 。诀窍是将所有这些名称解析为单个IP地址。这可以通过在" hosts"中输入这些名称来完成。所有请求系统的文件(/etc/hosts
用于unixoid syystems,如Linux,在MS-Windows中有类似的东西)。或者您在内部设置一个简单的DNS服务器。出来一样。如果这样做,那么剩下的就是在apache http服务器中为每个文件夹定义一个虚拟主机,在其配置中设置相应的ServerName
并配置正确的`DocumentRoot要发布的文件夹。同样,文档对细节和指令很有帮助:
https://httpd.apache.org/docs/2.4/vhosts/
无论您选择哪种方法,您还需要注意另外一个方面:apache http服务器将其在配置中找到的第一个虚拟主机视为"默认主机"。这意味着一个服务不匹配任何其他主机的所有请求。如果您担心人们无法访问系统上的某些对象,我建议为此定义一个特定的默认主机。特定主机作为默认主机,如果系统是通过IP地址请求系统而不是方法2中解释的主机名之一,也会选择该主机。您可以通过其他方式保护:通过阻止所有非源自的请求系统本身或通过配置密码保护或类似。