在apache linux中将子文件夹设置为子域

时间:2016-02-01 18:40:55

标签: php linux apache

我正在以这种格式在我的域上创建子文件夹:

http://example.com/f1

我正在创建这样的文件夹。我想用这种格式的网址访问他们的内容:

http://f1.example.com不在http://example.com/f1.

我使用apache linux OS和php作为服务器语言。 请帮忙。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

如果您的托管服务提供商支持cPanel,您可以轻松创建子域。转到您的托管cPanel。找到名为" Sub Domains"的选项。在那里,您将能够在您的域下创建子域。

答案 1 :(得分:0)

apache http服务器提供"虚拟主机"正是出于这个目的的特征。该功能为apache项目提供了非常好的文档:
http://httpd.apache.org/docs/2.4/en/vhosts

该文档还提供了一个方便的部分"常见设置的虚拟主机示例"。在那里,您可以看到一个完美的设置示例:

基本上你定义了一个"虚拟主机"每个这样的文件夹:

Listen 80
<VirtualHost *:80>
    DocumentRoot "/var/www/hosts/f1"
    ServerName f1.example.com

    # Other directives here
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/var/www/hosts/f2"
    ServerName f2.example.com

    # Other directives here
</VirtualHost>

这显然要求您控制http服务器,以便访问配置。如果那是的情况,例如因为你自己操作系统但使用一些便宜的共享主机提供商,那么你应该查阅他们的文档如何实现这一点。他们可能会提供一些工具来授予您对上述功能的有限访问权限。

使用该设置,您现在可以向两个单独的主机发出请求:

请注意,要使其工作,您还必须处理域名解析。必须将主机名解析为IP地址,如果要使用不同的主机名,则无法解决此问题。如果两个主机名(&#34;子域&#34;)解析为相同的IP地址,则通过http请求中的HOST标头完成请求主机的区别。这也意味着对原始IP地址的请求将由默认主机提供,该主机是上述设置中定义的第一个主机。