【问题标题】:Define local site in Apache - Use port other than 80在 Apache 中定义本地站点 - 使用 80 以外的端口
【发布时间】:2012-06-06 20:54:30
【问题描述】:

我想知道是否有人可以帮助我使用 Apache 定义一个新的本地虚拟主机。

目标是拥有一个只能从本地网络查看的站点(隐藏在防火墙后面)。现在我已经安装了 Webmin,它在 transaction:10000 上运行。我正在尝试让另一个站点在事务:7000 上运行。

以下不起作用:

DocumentRoot /var/path

有没有更好的方法来做到这一点?我是 Apache 新手,正在尝试解决这个问题。

总结:需要本地 /var/path 目录才能在 80 以外的端口上运行,仅用于本地访问。

【问题讨论】:

    标签: apache virtualhost httpd.conf virtual-hosts


    【解决方案1】:

    我假设您不了解 Apache 虚拟主机代码。我将向您展示如何使用它。如果这对您没有帮助,请随时回复我。
    您必须将代码放在您的 HTTPD.CONF 中,该代码可以在 conf 文件夹中找到。如果您的文件名为 wwwroot,只需更改下面代码中的名称,但不要更改文件夹的名称!!!

    NameVirtualHost 111.22.33.44
    <VirtualHost *:7000>
    ServerName www.domain.tld
    ServerPath /domain
    DocumentRoot /htdocs/domain
    </VirtualHost>
    

    这是什么意思?这意味着对任何以“/domain”开头的 URI 的请求都将从虚拟主机 www.domain.tld 提供。这意味着所有客户端都可以将页面作为 domain.tld/domain/ 访问,尽管发送 Host: 标头的客户端也可以将其作为 domain.tld/ 访问。

    为了完成这项工作,请在您的主要虚拟主机页面上放置一个指向http://www.domain.tld/domain/ 的链接。然后,在虚拟主机的页面中,确保使用纯粹的相对链接(例如,“file.html”或“../icons/image.gif”)或包含前缀 /domain/ 的链接(例如,“http: //www.domain.tld/domain/misc/file.html”或“/domain/misc/file.html”)。

    因此,所有域都将指向您的 IP 地址,如果域名为“www.domain.tld”,它将带您到文件夹“/htdocs/domain”或“/wwwroot/domain”

    编辑:

    <Directory "/var/path/">
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
    </Directory>
    

    这允许仅从本地主机访问“/var/path/”文件夹,这是在您的计算机上配置 Apache 的位置!

    祝你好运!!!

    【讨论】:

    • 感谢您的帮助,我今天要研究一下。您是否有任何推荐的在线资源来了解更多关于 Apache 的信息?我发现他们的文档非常混乱(与 PHP 和 MySQL 相比)。
    • 我不确定我是否知道,但我很乐意帮助您解决任何问题。 Google 也可能会有所帮助。
    • 我确实对此进行了更多研究。这更像是不知道要寻找什么的情况。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-30
    • 1970-01-01
    • 2011-04-25
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 2011-02-19
    相关资源
    最近更新 更多