Apache/IP端口问题

Apache/IP端口问题,apache,varnish,varnish-vcl,Apache,Varnish,Varnish Vcl,我有一个带有 ::varnish(端口80)->apache端口(8080) 默认情况下,apache会在目录中添加尾随斜杠,但在添加时会使用端口重定向。e、 g http:/www.domain.com/folder重定向到http:/www.domain.com:8080/folder/ 此带有端口的url会导致问题 所以我试着添加指令 DirectorySlash在.htaccess文件中关闭,但应用程序不再运行良好。e、 g.断链等 然后,我尝试按照上所述更新VCL 但是我得到了错误

我有一个带有

::varnish(端口80)->apache端口(8080)

默认情况下,apache会在目录中添加尾随斜杠,但在添加时会使用端口重定向。e、 g

http:/www.domain.com/folder重定向到http:/www.domain.com:8080/folder/

此带有端口的url会导致问题

所以我试着添加指令 DirectorySlash在.htaccess文件中关闭,但应用程序不再运行良好。e、 g.断链等

然后,我尝试按照上所述更新VCL

但是我得到了错误

Message from VCC-compiler:
Expected ';' got '"/"'
(program line 174), at
('input' Line 14 Pos 26)
   set req.url = req.url "/";
-------------------------###-
有人有什么建议吗


谢谢

我建议不要使用重定向逻辑;基本问题是,基于
DirectorySlash
设置的重定向将在重定向中添加内部Apache端口(8080)

要修复此问题,请尝试将以下Apache设置添加到Apache配置中(在htaccess中不起作用):

:

禁用UseCononicalName后,Apache httpd将使用客户端提供的主机名和端口(如果有)形成自引用URL


这意味着apache应该尊重Varnish转发的传入客户端端口(80),即使在执行
directorySrash
重定向时也是如此。

嗨,Jeff,非常感谢您的建议。实际上,这让我更详细地查看了vhost文件,看起来似乎没有设置serverName和serverAlias。一旦它们被设置好,一切都按预期进行。在
sites enabled/000 default.conf
apache2.conf
中将
useCononicalName
设置为
Off
后,8080重定向仍然发生。有线索吗?
Message from VCC-compiler:
Expected ';' got '"/"'
(program line 174), at
('input' Line 14 Pos 26)
   set req.url = req.url "/";
-------------------------###-
UseCanonicalName Off