# php-simple-proxy **Repository Path**: JianGDT-Lib/php-simple-proxy ## Basic Information - **Project Name**: php-simple-proxy - **Description**: 简单的php代理脚本 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2019-09-03 - **Last Updated**: 2024-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #php-simple-proxy(简单php透传代理脚本) 版本: 1.0 最后更新: 2015-05-18 git@osc:http://git.oschina.net/atwal/php-simple-proxy 源码:http://git.oschina.net/atwal/php-simple-proxy/raw/master/simple_proxy.php 参考项目: http://github.com/cowboy/php-simple-proxy/ 优化修改点:加上了异常处理,baseurl设置,会更安全,默认为jsonp格式 ##GET请求参数 `url` 经过 urlencoded 编码的远程地址 `mode` 如果 mode=native ,内容会透传,如果忽略默认为JSON格式 `cb` JSONP格式回调函数名,默认为spcb `user_agent` 请求头中的 User-Agent 值,不传默认为本浏览器的 User-Agent值 `send_cookies` 如果 send_cookies=1 ,所有的cookies将被写入请求头 `send_session` 如果 send_session=1 并且 send_cookies=1 ,SID cookie 将被写入请求头 `full_headers` 如果是一个JSON格式的请求,并且 full_headers=1 ,在返回值中将包含完整的 header 信息 `full_status` 如果是一个JSON格式的请求,并且 full_status=1, 在返回值中将包含完整的 cURL 状态信息,否则只有 http_code 信息 ##POST请求参数 所有的 POST 请求参数会自动加到远程地址请求中 ##JSON格式请求 结果将会以JSON格式返回 Request: > simple_proxy.php?url=http://example.com/ Response: > { "contents": "...", "headers": {...}, "status": {...} } ##JSON对象属性: `contents` - (String) 远程请求返回的内容 `headers` - (Object) 远程请求返回的header信息 `status` - (Object) cURL返回的HTTP状态码 ##JSONP格式请求 结果将会以JSONP格式返回(只有 $enable_jsonp 设置为 true的时才生效) Request: > simple_proxy.php?url=http://example.com/&cb=foo Response: > foo({ "contents": "...", "headers": {...}, "status": {...} }) JSON对象属性: 同上面的json请求 ##Native请求 结果将会直接原样返回 (只有 $enable_native 设置为true时才生效) Request: > simple_proxy.php?url=http://example.com/&mode=native Response: > ... ##设置项 `$enable_jsonp` 是否启用JSONP格式返回。默认为true `$enable_native` 是否直接返回请求信息。建议用 $valid_url_regex - 配置白名单来避免XSS攻击,默认为false `$valid_url_regex` 正则形式的白名单。默认允许所有网址 `$baseurl` 如果是代理固定的请求地址,为了安全,可以设置 $baseurl 为要请求的地址,配合url参数使用,这样最终用到的地址是 $baseurl . $url