首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问位于/var/www/xxxxx和/var/www/html/yyyyy的apache2站点

访问位于/var/www/xxxxx和/var/www/html/yyyyy的apache2站点
EN

Stack Overflow用户
提问于 2020-01-08 22:17:16
回答 2查看 1.8K关注 0票数 0

我在路由器后面运行了一个服务器(ubuntu18.04),用于测试各种web应用程序(狙击-it、phpipam和libre速度测试)。没有资源让单个机器在其上运行,也不想深入研究虚拟机,我想我可以在apache的同一个实例上运行它们,并通过更改虚拟主机配置来访问它们。

当我运行单个虚拟主机时,每个站点都运行良好。当我尝试运行多个站点(a2ensite xxx和a2ensite yyy)时,就会出现具有较低字母名称的站点(本例中为xxx)。

我不知道Alias或者重写是不是该走的路。我无法真正改变开发人员选择编写应用程序的方式,以及他们想把程序放在哪里。我能理解他们为什么把它们放在那里。我只想能访问所有的网站/网页/应用程序.

/etc/apache2/sites-available/snipeit.conf

代码语言:javascript
复制
<VirtualHost *:80>
    ServerName snipeit
    DocumentRoot /var/www/snipe-it/public
    Alias "/" "/var/www/snipe-it/public"
    <Directory /var/www/snipe-it/public>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

/etc/apache2/sites-available/phpipam.conf

代码语言:javascript
复制
<VirtualHost *:80>
    ServerName phpipam
    DocumentRoot /var/www/phpipam
    <Directory /var/www/phpipam>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>

/etc/apache2/sites-available/speedtest.conf

代码语言:javascript
复制
<VirtualHost *:80>
    ServerName speedtest
    DocumentRoot /var/www/html
    <Directory /var/www/html/speedtest>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>
EN

回答 2

Stack Overflow用户

发布于 2020-01-09 17:05:12

您可以按照以下步骤检查问题所在。

1)检查/etc/host文件是否有适合ServerNAMe的DNS条目

代码语言:javascript
复制
snipeit.x localhost
phpipam.x localhost
speedtest.x localhost

2)确保ServerName指令与主机匹配。ServerName应该与用于访问它的DNS名称完全相同。

3)检查Apache VirtualHost配置

代码语言:javascript
复制
apache2ctl -S

3)在调试模式下运行Apache。并检查apache是如何解析请求的。

代码语言:javascript
复制
apache2ctl -t -c /path/to/apache.conf
票数 0
EN

Stack Overflow用户

发布于 2020-01-13 15:26:30

要实现您想要的目标,您可能需要这样做:

将这两个目录移动到/var/www/html。并删除它们的所有虚拟主机(),除了(用于/var/www/html,即000-default.conf )。当您将它们存储在不同的目录中而不是这个简单的技巧时,它将变得非常复杂。

编辑:

用户有依赖于这些路径的应用程序。因此,最好的方法是在Apache中使用别名。确保在Apache中加载了mod_alias。将其添加到httpd.conf的末尾。

代码语言:javascript
复制
Alias "/snipeit" "/var/www/snipe-it/public"
Alias "/phpipam" "/var/www/phpiam"
#And, speedtest is already inside the folder.

您可以访问这样的站点:http://localhost/snipeithttp://localhost/phpiamhttp://localhost/speedtest。或者你可以使用IP地址来访问它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59654591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档