Answers:
此功能不是在php中实现的,而是在讨论中:http :
//bugs.php.net/bug.php?id=29280
如果您的php> = 5.3,则可以使用auto_prepend ini设置包括使用stream_context_set_default()设置默认代理的脚本。但这只会为使用默认上下文的php部分设置代理,没有对其进行测试,但是我认为curl fore示例确实存在。
您是否尝试过设置环境变量?
http_proxy = http://proxy.example.com:8080
putenv()
还是在.htaccess中执行此操作?
我不知道您的分布,但是在SUSE中,您可以编辑文件/etc/sysconfig/proxy
并输入一个或多个代理服务器以用于系统范围。
这是一个例子:
## Path: Network/Proxy
## Description:
## Type: yesno
## Default: no
## Config: kde,profiles
#
# Enable a generation of the proxy settings to the profile.
# This setting allows to turn the proxy on and off while
# preserving the particular proxy setup.
#
PROXY_ENABLED="yes"
## Type: string
## Default: ""
#
# Some programs (e.g. lynx, arena and wget) support proxies, if set in
# the environment. SuSEconfig can add these environment variables to
# /etc/SuSEconfig/* (sourced by /etc/profile etc.) -
# See http://portal.suse.com/sdb/en/1998/01/lynx_proxy.html for more details.
# Example: HTTP_PROXY="http://proxy.provider.de:3128/"
HTTP_PROXY="http://your.proxy.here:3128"
## Type: string
## Default: ""
#
# Some programs (e.g. lynx, arena and wget) support proxies, if set in
# the environment. SuSEconfig can add these environment variables to
# /etc/SuSEconfig/* (sourced by /etc/profile etc.) -
# this setting is for https connections
HTTPS_PROXY="http://your.proxy.here:3128"
## Type: string
## Default: ""
#
# Example: FTP_PROXY="http://proxy.provider.de:3128/"
#
FTP_PROXY="http://your.proxy.here:3128"
## Type: string
## Default: ""
#
# Example: GOPHER_PROXY="http://proxy.provider.de:3128/"
#
GOPHER_PROXY=""
## Type: string(localhost)
## Default: localhost
#
# Example: NO_PROXY="www.me.de, do.main, localhost"
#
NO_PROXY="localhost, 127.0.0.1"
您还需要信息吗?
无论如何-记录:长期的未解决问题在drupal中http://drupal.org/node/7881-确实很奇怪。-还有更多
我修补了我的核心代码,但是必须跟踪升级时补丁的变化,这并不好。
如果有一种方法可以使php使用系统范围的代理,我不知道,搜索起来很乏味。
打招呼