1

我正在使用 wamp 服务器。我所有项目的域名都是 http:localhost/

项目位于子文件夹中。例如:http:localhost/project-a/

我想将 http:localhost/project-a/ 设置为项目域,以便我可以轻松管理相对路径。

每当我使用相对路径或服务器 URI 时,我需要在本地服务器的相对路径或其他路径中包含子文件夹,并在传输到实时服务器时将其删除。当我经常为许多项目更新脚本时,这些都是非常痛苦的。

我想我可以使用 apache 配置将它们设置为域。我不确定如何。

4

1 回答 1

3

在本地主机文件中,定义以下内容:

127.0.0.1 projecta.example.com

然后,使用 Apache 的虚拟主机工具,为该域定义一个虚拟主机:

<VirtualHost *:80>
    ServerAdmin admin@projecta.example.com
    DocumentRoot "/www/project-a/public_html"
    ServerName projecta.example.com
    <IfModule env_module>
        SetEnv CanonicalName projecta.example.com
    </IfModule>
    ErrorLog "/logs/project-a/apache_error.log"
    CustomLog "/logs/project-a/apache_access.log" combined
    <IfModule rewrite_module>
        RewriteLog "/logs/project-a/apache_rewrite.log
        RewriteLogLevel 4
    </IfModule>
</VirtualHost>

<Directory "/www/project-a/public_html">
    Options FollowSymLinks Includes
    AllowOverride all

    Order Allow,Deny
    Allow from all
</Directory>

... 或与您的本地设置兼容的东西。有关设置虚拟主机的帮助,请参阅Apache 虚拟主机文档

你最终得到的是 projecta.example.com 解析到“托管”项目的“服务器”(实际上是虚拟服务器)的根目录。然后,您将停止http://localhost/project-a用作 URL,并开始使用http://projecta.example.com(或您设计的任何 URL)。您可能需要稍微重构当前目录,因为您似乎是从一台根服务器运行本地测试环境。

请注意,以上不是一个完整的解决方案,但旨在帮助您入门。上面的某些内容可能特定于我的设置,您不需要或需要更改。您还需要在您的 Apache 服务器中配置/启用其他一些东西,以使其全部正常工作——其中一些取决于您的本地环境和/或要求。

于 2012-12-31T18:20:54.710 回答