あなたは物事を少し混ぜています。
authenticateUser();
サーバー上で実行され、認証はクライアント上で行われます。クライアント認証用の PHP スクリプトの実行中に停止して、PHP スクリプトの実行を続行することはできません。
あなたの質問の解決策として、これはあなたの場合にうまくいくかもしれません:
if(authenticationNeeded)
{
// redirect to a page that requires authentication that does what index was supposed to do.
redirect('index_ssl.php');
}
を使用すると、一部のディレクトリ/ファイルに対してのみ.htaccess
定義できます。
重要な点は、指定したディレクトリ/ファイルへのアクセスを許可するために、Web サーバー (この場合は Apache) がクライアント証明書を必要とすることです。SSLVerifyClient require
SSLVerifyClient require
結論として、あなたが望むことをする方法はありません。クライアント証明書を必要とする、または必要としないファイル/ディレクトリのみを持つことができます。クライアント証明書を要求するために PHP ファイルの途中で停止する方法はありませんが、必要なファイルにリダイレクトすることはできます。