/etc/hosts 将域重定向到 localhost/directory

/etc/hosts 将域重定向到 localhost/directory

在此示例中,我尝试强制 test.com 加载 localhost/project

127.0.0.1/project test.com

但是它不起作用。

127.0.0.1 test.com

上面的方法可行,但我确实需要将其转到 /project。有什么想法吗?

答案1

/etc/hosts不是那样的。它只是 IP 地址到名称的映射。基本上是文本文件中的 DNS。您需要配置您的 Web 服务器,无论它是什么,将所有请求重定向到根目录以转到 /project。一种方法可能是将文档根目录设置为直接指向 /project 文件夹。

答案2

编辑 编辑/主持:

127.0.0.1 根控制台矩阵

编辑 /etc/apache2/sites-enabled/000-default 使用以下命令:

<VirtualHost *:8080>
    ServerName [projectname]
    ServerAdmin webmaster@localhost
    DocumentRoot /home/count/Workspace/[projectname]/

    <Directory /home/count/Workspace/[projectname]/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

最后设置端口来监听所有端口:

NameVirtualHost *
Listen 80
Listen 8080

然后重新启动,例如,你可以让 domain.com 加载 localhost/[projectname]

不确定你们为什么说这是不可能的。:/ meh

答案3

忘记 /etc/hosts 吧。/etc/hosts 是回答“这个名字属于哪个 IP”的老办法。它与文件或 [web] 服务的组织方式无关。

如果您想操纵网络流量,请使用合适的工具。例如代理。

答案4

这需要在 Web 服务器级别完成。但是,您需要 /etc/host 条目,但不包含斜线项目部分。如果您使用 apache httpd 作为 Web 服务器,请查看 url 重写教程。我认为一个简单的示例对您有用,即向 httpd.conf 或 httpd.conf 中要求包含的某些 conf 添加以下内容

RedirectPermanent /project http://test.com

您需要在 httpd 中加载 mod_alias 模块才能使其工作。您很可能已经加载了。

相关内容