php / php/php-src

php_curl does not work with IIS extended protection

未关闭
#14,039 5 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

Extension: curl Feature OS: Windows Status: Needs Triage
主要语言
C
星标
40.4k
派生
8.1k
平均合并
2 天 13 小时
30 天内合并 PR
96

描述

Description

Same issue described here:
https://github.com/curl/curl/issues/12511

a workaround would be to use the Schannel Backend instead of OpenSSL:
set CURL_SSL_BACKEND=schannel
https://curl.se/libcurl/c/libcurl-env.html

But this does not work for precompiled php binaries as libcurl is statically linked.

https://support.microsoft.com/en-us/topic/description-of-the-update-that-implements-extended-protection-for-authentication-in-internet-information-services-iis-0efdf83b-2ae5-040c-5308-6cacf2e24b30?WT.mc_id=M365-MVP-6771

Would it be possible to add a php.ini setting to use a different curl backend? Or build php_curl with schannel backend on windows?
see https://curl.se/libcurl/c/curl_global_sslset.html

PHP Version

PHP 8.3.6

Operating System

Windows 11

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

先从 php_curl 扩展、php.ini 设置方案和 curl_global_sslset 入手,然后将预编译 Windows 构建的限制与 Schannel 解决方案进行比较。完成标准是:为 Windows 11 上的 PHP 8.3.6 提供一种受支持的方式来选择兼容的后端,或者确认一种基于 Schannel 的构建方案。

由索引模型根据 Issue 内容生成。

评估

技术栈
c, php
领域
backend, security
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
停滞
描述清晰度
需要澄清
新手友好度
25/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。