php / php/php-src

php_curl does not work with IIS extended protection

オープン
#14,039 コメント 5 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Extension: curl Feature OS: Windows Status: Needs Triage
主要言語
C
スター
40.4k
フォーク
8.1k
平均マージ
2日 13時間
マージ済み PR(30日)
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. リポジトリをフォークし、ブランチを切って変更します。
  4. 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
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。