【问题标题】:Apache named-based VirtualHost configuration for multiple sites in one host一台主机中多个站点的基于 Apache 命名的 VirtualHost 配置
【发布时间】:2013-07-31 04:46:25
【问题描述】:

我的问题很简单,我也认为解决方案。 我在论坛上搜索了大约 2-3 个小时,但没有我的答案... -_-' 。

我在主机提供商中获得了“空间”。所以他们给了我一个“www”目录。 我在这个目录中有多个文件夹,所以它就像:

www-- | /文件夹 1 /文件夹2 /文件夹3等...... 每个文件夹代表一个网站。 所以我想将每个网站重定向到每个文件夹,例如:

www.example1.com -> Folder1 www.example2.com -> Folder2 www.example3.com -> Folder3 etc....

-BUT- 不显示每个...的子文件夹 所以这不是一个解决方案:www.example1.com/Folder1 这是一个解决方案: www.example1.com 。 如何在根 WWW 中修改我的 .htaccess 文件? 提前致谢!

【问题讨论】:

  • 您能接受下面第一个正确发布的答案吗?

标签: apache .htaccess web rewrite


【解决方案1】:

这必须通过您的 http 服务器配置(如 apache)来完成。

VirtualHosts 是您在一台计算机上拆分多个域的方式,它们各自的 .htaccess 配置将为您的站点提供保护(用户名/密码)。

如果只是想将电脑拆分成多台主机,则不需要使用.htaccess。

查看以下链接
Here are some VirtualHost Configuration Examples
Apache HTTP Server Tutorial
Server Config Files

摘自“基于名称的虚拟主机”上的“示例”链接:

<VirtualHost 172.20.30.50>
    DocumentRoot /www/example1
    ServerName www.example.com

    # Other directives here ...
</VirtualHost>

<VirtualHost 172.20.30.50>
    DocumentRoot /www/example2
    ServerName www.example.org

    # Other directives here ...
</VirtualHost>

配置文件通常位于/etc/apache2/apache2.conf,然后从/etc/apache2/sites-enabled/*.conf 中读取,/etc/apache2/sites-enabled/*.conf 本质上是指向/etc/apache2/sites-available/*.conf 的符号链接——这些文件与上述代码一起使用以实现您描述的结果。

您可能也有兴趣研究 nginx,它是 apache2 的替代品。

【讨论】:

    【解决方案2】:

    .htaccess 不是你要找的。相反,请阅读基于名称的虚拟主机支持。您需要在 httpd.conf 文件中添加一些条目,以将每个域指向 www 目录中的正确文件夹。它应该很简单。

    http://httpd.apache.org/docs/2.2/vhosts/name-based.html

    【讨论】:

      猜你喜欢
      • 2014-12-31
      • 2014-07-20
      • 1970-01-01
      • 2012-09-04
      • 2022-12-17
      • 2014-08-07
      • 2021-12-03
      • 1970-01-01
      • 2011-01-20
      相关资源
      最近更新 更多