Typo3落后于代理

时间:2016-11-03 15:35:56

标签: proxy typo3

我正在尝试在(转发)代理(squid)后面运行一个Typo3(6.2)实例。我已经设置了

'HTTP' => array(
            'adapter' => 'curl',
            'proxy_host' => 'my.local.proxy.ip',
            'proxy_port' => '8080',
)

以及

'SYS' => array(
            'curlProxyServer' => 'http://my.local.proxy.ip:8080',
            'curlUse' => '1'
    )

代理人不会要求提供凭据。

当我尝试更新扩展名列表时,收到错误消息

  

更新扩展程序列表   无法访问远程资源http://repositories.typo3.org/mirrors.xml.gz

如果我尝试获取预配置的分​​发,则说

  

1342635425   无法访问远程资源http://repositories.typo3.org/mirrors.xml.gz

根据代理日志,服务器甚至不尝试连接到代理。

我可以在命令行上使用wget轻松下载文件。

好的,我已经调查了他的问题,根据我的判断,Typo3甚至尝试连接任何地方

我使用tcpdump和wireshark来分析网络流量。该网站声称已尝试向repositories.typo3.org发送http-Request,因此我希望找到代理连接尝试或DNS查询,然后尝试连接到该IP。 (当然,后者被认为不起作用。)但是,这一切都不会发生。

我在变量curlProxyServer中尝试了一些细微的变化。文件明确说明

  
    

字符串:Proxyserver为http://proxy:port/。自4.6以后不推荐使用 - 将在TYPO3 CMS 7中删除。请参阅下面的http选项。

  

所以我尝试添加尾随的“/”并删除“http://” - 没有变化。我相信代理服务器没有任何问题,因为代理服务器甚至没有联系过,而且多年来一直对其他一切工作都很好。

1 个答案:

答案 0 :(得分:2)

错误消息来自\TYPO3\CMS\Extensionmanager\Utility\Repository\Helper::fetchFile()。这个使用\TYPO3\CMS\Core\Utility\GeneralUtility::getUrl()来获取实际的文件内容。 根据您的设置,它应该使用该功能的第一部分,因为设置了curlUse且网址以httphttps开头。

所以你现在需要做的是在代码中抛出一些调试行,并检查请求出错的地方。

查看源代码,我想到了三种可能性:

  1. curl代理参数不支持方案,因此它应该是'curlProxyServer' => 'my.local.proxy.ip:8080',
  2. 某些重定向不起作用。
  3. 您的代理在https时遇到问题,因为应TYPO3 TER查询https