2011-05-13 8 views
0

だから、PHPを使って.htacessで保護された.htmlファイルにアクセスできるようにする必要があります。現在の設定はmod_auth_ldapに依存しており、ユーザーは.htmlファイルを見ることができます。PHPから.htacessで保護されたhtml

私が作成したい設定には、ユーザーがログインしたPHPスクリプトがあり、現在のセキュリティレベルを維持しながら既存の構造を活用しながら.htmlファイルにアクセスすることができます。

要するに、私はPHPからApache2への認証を渡す必要があります。これは可能ですか?

答えて

2

多くの作業の後、私は解決策を考え出しました。 保護されたディレクトリのための私の.htaccessこの

RewriteEngine On 
RewriteBase /php-wrapper/auth 
RewriteRule ^(.*) /php-wrapper/wrapper.php?topage=https://%{SERVER_NAME}/php-wrapper/auth/$1 

のように見えるこれは、認証のためにチェックし、合格した場合、次の

ファイルで応答
$type = (get_object_vars(apache_lookup_uri("$abs_path"))); 
header('Content-type: '.$type['content_type']); 
readfile($abs_path); 

をして戻って私のPHPスクリプトに要求を渡し、適切なMIMEタイプ

私が提供していたコンテンツの一部にXMLがあるため、短い公開タグを無効にする必要がありました。私は、この行をラッパーを保持していたディレクトリの.htaccessに追加することでこれを達成しました。

php_value short_open_tag 0 

Stackoverflowはこの解決策を見つけることに不可欠であり、そのために私は皆さんに感謝します。

1

PHPを入手してauthを処理すると、ブラウザのヘッダーによってログインの詳細が送信され続け、.htaccessとmod_auth_basicが動作します。つまり、あなたのユーザーは、HTML/CSSの優れたものではなく、醜いブラウザログインウィンドウのものでログインする必要があります。

+0

これは以前説明したはずですが、別のウェブサイトから認証を渡すためにハッシュ共有キーを使用しています...残念ながら、ウェブサイトの周りの政治は私を1つのドメインにホストしていません。 –

+0

これはどのように動作しますか、[this](http://www.askapache.com/htaccess/tricks-for-controlling-htaccess-basic-authentication-with-php-and-mod_rewrite)を見てください。 html#m0-askapache0)。 –

+0

それはよさそうだ。どのように私はPHPをラップするかわからない...多分HTMLを含める?しかし、それは間違いなく動作するように見えます。 –

関連する問題