0

現在使用しているかどうかではなく、HTTPS リクエストを受け入れることができるかどうかを確認したいことに注意してください。また、ポートをスキャンしたり、他の [a] 同期リクエストを作成したりすることは、非常に迅速にする必要があるため、私の場合はオプションではないことに注意してください。

それについてApacheに「尋ねる」方法はありますか?たとえば、コマンドラインから?

編集:すべてのアイデアに感謝しますが、それらはあなたや私のような人間による上記の事実の「手動」チェックのためのものです。私が理解できるその部分、私を信じてください。これらのフレーズ「[a]synchronous requests」および「it need to be very quick」は、PHP アプリケーションの形式のソフトウェアを暗示していることは明らかだと思いました。

4

4 に答える 4

3

これを確認することも、 mod_sslがオンまたはオフであることを頬張るphpinfo();こともできます

ここに画像の説明を入力

于 2012-11-17T04:00:12.367 に答える
1

これが管理するサーバーの場合:

  1. Apacheでmod_sslが有効になっているかどうかを確認します
  2. Apacheのports.confファイルのポート443でリッスンしていることを確認してください
  3. Ports.confからIP:ポート設定をリッスンするようにSSLホストを設定します
  4. ファイアウォールでポート443をブロックしていないことを確認してください(ここにはファイアウォールの多くのオプションがあります)

Apacheを構成し、ファイアウォールを閉じていない場合、ApacheはOSにポート443でリッスンするように指示する必要があり、リクエストを処理します。

これが共有サーバーであるか、自分で管理していないサーバーの場合は、サーバーのサポート/管理者に問い合わせてください

于 2012-11-17T05:02:50.333 に答える
1

HTTPSプロトコルのサポートを確認し、phpinfo()情報を配列に保存する方法は次のとおりです。

// NOTE: This section was extracted from the PHP Manual, example from **jon at sitewizard dot ca**
ob_start();
phpinfo();
$PHPInfo = array( 'phpinfo' => array() );
if ( preg_match_all( '#(?:<h2>(?:<a name=".*?">)?(.*?)(?:</a>)?</h2>)|(?:<tr(?: class=".*?")?><t[hd](?: class=".*?")?>(.*?)\s*</t[hd]>(?:<t[hd](?: class=".*?")?>(.*?)\s*</t[hd]>(?:<t[hd](?: class=".*?")?>(.*?)\s*</t[hd]>)?)?</tr>)#s',
                     ob_get_clean(), $Matches, PREG_SET_ORDER )
) {
  foreach ( $Matches as $Value ) {
    if ( strlen( $Value[ 1 ] ) ) {
      $PHPInfo[ $Value[ 1 ] ] = array();
    }
    elseif ( isset( $Value[ 3 ] ) ) {
      $PHPInfo[ end( array_keys( $PHPInfo ) ) ][ $Value[ 2 ] ] = isset( $Value[ 4 ] ) ? array( $Value[ 3 ],
                                                                                               $Value[ 4 ] ) : $Value[ 3 ];
    }
    else {
      $PHPInfo[ end( array_keys( $PHPInfo ) ) ][ ] = $Value[ 2 ];
    }
  }
}

// End of extracted section ----------------------

$HTTPS      = $PHPInfo[ 'curl' ][ 'Protocols' ];
$HTTPSFound = mb_strstr( $HTTPS, 'https', FALSE );

if ( $HTTPSFound ) {
  echo "HTTPS supported<br /><br />";
}
else {
  echo "HTTPS NOT supported<br /><br />";
}

追記:この回答は「手動チェック」を必要としません。スクリプトを介して情報を取得します!

于 2012-11-17T05:09:52.517 に答える
1

このコードをページで実行する必要があると思います:<?php echo phpinfo();バージョンと設定に関するすべての情報を取得します。

于 2012-11-17T03:56:38.793 に答える