0

'auto-prepend-file'値を使用して、そのディレクトリのすべてのページの前に実行されるPHPスクリプトを設定しようとしています。現在、セッションを破棄して作成してから、セッション変数を設定しています。

しかし、ページからセッション変数にアクセスしようとすると、それらに値がありません。

  1. この値が.htaccessファイルに設定されないようにすることはできますか?
  2. php以外のページに対しても呼び出された場合、追加されたスクリプトは実行されますか?
4

2 に答える 2

1

この値が.htaccessファイルに設定されないようにすることはできますか?

.htaccessファイルを使用してセッションCookieを無効にすることは可能ですが、それがあなたの場合の本当の問題ではないかと思います。ファイルが実際に先頭に追加されていることを確認しますか?die('The prepended file was executed.')ファイルに追加するなど、より直接的なテストを試してください。

php以外のページに対しても呼び出された場合、追加されたスクリプトは実行されますか?

auto_prepend_fileディレクティブは、PHPによって解析されたファイルにのみ適用されます。.phpファイルのみを含むほとんどのサーバー構成。ただし、AddHandlerディレクティブを使用して、Apacheに他のファイルタイプでもPHPを実行させることができます。

たとえば、AddHandlerを使用してPHPコードを含むことができる別のファイルタイプとして.htmlを追加する場合、auto_prepend_fileは.htmlファイルにも適用されます。

于 2012-08-21T19:22:55.917 に答える
0

私にとってそれを解決することになったのは、Apache構成ファイルに「AllowOverride」ディレクティブを設定することでした。特定のフォルダで.htaccess権限を許可するには、次のようなものが必要です...

# Allow .htaccess settings
<Directory "/absolute/path/to/htaccessfolder">
    AllowOverride Options
</Directory>

... httpd.confで、選択したディレクトリからオプション設定を上書きできます。

于 2012-08-22T15:30:32.570 に答える