首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache为每个目录重定向到不同的端口。

问Apache为每个目录重定向到不同的端口。
EN

Server Fault用户
提问于 2011-11-28 14:07:02
回答 1查看 383关注 0票数 1

我已经将Apache虚拟主机配置为在端口8000处运行,而在Apache前面,我在端口80上配置了Varnish。问题是,如果我将其粘贴到浏览器中:

Example.com/a_目录

我被重定向到example.com:8000/a_目录

我无法连接错误。在配置文件中,我有以下内容:

代码语言:javascript
复制
<VirtualHost *:8000>
    ServerAdmin xxx@xxx.org.au

    DocumentRoot /var/www
    DirectoryIndex index.php index.html index.htm 

    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>

    <Directory /var/www>
        AllowOverride All
    </Directory>

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

</VirtualHost>
EN

回答 1

Server Fault用户

发布于 2011-11-29 02:50:28

这几乎可以肯定是由于自引用重定向造成的,例如,当目录请求中缺少尾随斜杠时。在这种情况下,在没有ServerName指令的情况下,Apache将使用请求所在的端口--在您的示例中是8000。在Apache2.x中,ServerName指令支持用于构建重定向的端口说明符。来自Apache文档:

ServerName指令设置服务器用来标识自身的请求方案、主机名和端口。这在创建重定向URL时使用。

在vhost块中添加类似于(显然改变了您的环境)的ServerName www.foo.com:80,它应该告诉Apache使用上游代理端口构建这些重定向,而不是它正在监听的端口。

有关此指令的更多信息,请参见http://httpd.apache.org/docs/2.2/mod/core.html。

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

https://serverfault.com/questions/335444

复制
相关文章

相似问题

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