如何在apache2中创建多个文档根目录

如何在apache2中创建多个文档根目录,apache2,document,root,Apache2,Document,Root,我想在apache2中创建一个虚拟主机,但我希望它将源文件放在/var/www文件夹之外,即我需要在配置文件中包含另一个文档根目录,但我通过编辑apache/sites available/default文件来实现它,但我知道这不是正确的实现方式,有人能提出正确的实施方法吗 带着感谢和问候 bala您可以在站点可用文件夹中创建一个新文件(例如myvirtualhost),然后在站点启用中创建一个符号链接。文件和符号链接可以有任何名称 在新文件中创建新的虚拟主机定义: <VirtualHos

我想在apache2中创建一个虚拟主机,但我希望它将源文件放在/var/www文件夹之外,即我需要在配置文件中包含另一个文档根目录,但我通过编辑apache/sites available/default文件来实现它,但我知道这不是正确的实现方式,有人能提出正确的实施方法吗

带着感谢和问候

bala

您可以在
站点可用
文件夹中创建一个新文件(例如
myvirtualhost
),然后在
站点启用
中创建一个符号链接。文件和符号链接可以有任何名称

在新文件中创建新的虚拟主机定义:

<VirtualHost *:80>
    DocumentRoot /path/to/your/webapplication
    ServerName abc.local
</VirtualHost>
如果要使新虚拟主机在internet上可用,则需要确保已向提供商注册了有效的DNS名称(例如
webapplication.mydomain.com


基本上就是这样。但是,您可能希望向虚拟主机定义添加一些指令以控制对资源的访问。

您可以转到httpd.conf文件(位于conf目录中的apache配置文件)。然后找到一行内容如下:

# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
然后像这样取消注释第二行:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf
转到同样位于conf文件夹中的“额外”文件夹。您将看到名为“httpd vhosts.conf”的文件

在虚拟主机示例中编辑文件:

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "...full path to you new root folder for this site...."
    ServerName yourwebsite.com
    ServerAlias www.yourwebsite.com
    ErrorLog "logs/newpath.error.log"
    CustomLog "logs/newpath.access.log" common
</VirtualHost>

服务器管理员webmaster@dummy-host.localhost
DocumentRoot“…指向此站点的新根文件夹的完整路径…”
ServerName yourwebsite.com
服务器别名www.yourwebsite.com
ErrorLog“logs/newpath.error.log”
CustomLog“logs/newpath.access.log”通用

但这是一个非常简单的解决方案,请阅读更多关于虚拟主机的内容,但它应该为您指出正确的方向

天哪,为什么其他答案没有提到主机文件是一个谜
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "...full path to you new root folder for this site...."
    ServerName yourwebsite.com
    ServerAlias www.yourwebsite.com
    ErrorLog "logs/newpath.error.log"
    CustomLog "logs/newpath.access.log" common
</VirtualHost>