如何使用代理密码在 ubuntu 上设置命名虚拟主机?

如何使用代理密码在 ubuntu 上设置命名虚拟主机?

我正在运行最新版本的 ubuntu,12.04。

我正在尝试通过虚假域访问我的 ruby​​ on rails 应用程序,如我的 /etc/hosts 文件中所指定:

127.0.0.1 myapp.vhost
127.0.0.1 www.myapp.vhost

就 apache 而言,我添加了虚拟主机配置:

<VirtualHost *:80>
    ServerName myapp.vhost
    ServerAlias *.myapp.vhost
    ProxyPass / http://localhost:3001/
    ProxyPassReverse / http://localhost:3001/
    ProxyPreserveHost on
</VirtualHost>

到文件 /etc/apache2/sites-available/myapp.conf

在 /etc/apache2/apache2.conf 中,我添加了

Include sites-available/
Include sites-available/myapp.conf

到文件底部。

我可以使用以下命令重新启动 apache,fin 并且不会出现错误:

sudo /etc/init.d/apache2 force-reload

问题是当我导航到http://myapp.vhost在我的浏览器中,出现 404 错误。

我在这里做错了什么?

注意:我的 ruby​​ on rails 服务器在端口 3001 上运行,使用 script/server 的 -p3001 选项

答案1

从 /etc/apache2/apache2.conf 中删除“Include sites-available/myapp.conf”行,并将 /etc/apache2/sites-available/myapp.conf 重命名为 /etc/apache2/sites-available/myapp(即删除“.conf”后缀)。

然后发出sudo a2ensite myapp进而sudo 服务 apache2 重启

这应该可以让你工作。

您可能还想更改您的 *ServerAlias.myapp.vhost线服务器别名 www.myapp.vhost然后尝试连接到http://www.myapp.vhost因为这是 /etc/hosts 中的条目,而不仅仅是域名。

相关内容