MacのローカルAMPスタックでサードパーティのPHPアプリケーションを実行しています。私は最近ライオンと共に新しいMac Miniを購入し、それをセットアップしようとしています。私の以前のコンピュータはMAMPを搭載したMBエアでした。今私は組み込みのApache/PHPと自作のMySQLをインストールして使用しています。is_dirがApacheのシンボリックリンクでfalseを返す
私の問題は次のとおりです。シンボリックリンクのあるディレクトリがあります。これらのシンボリックリンクはディレクトリにあり、PHPアプリケーションはこれらをis_dir()
でチェックしています。
私のライオンAMPセットアップでは、このis_dir()
は失敗しています。私のSnow Leopard MAMP is_dir()
の同じ設定がシンボリックリンクでうまく動作します。
ここではもっと興味があります。 php -a
(php対話型コマンドラインモード)を実行し、同じディレクトリにis_dir()
を実行すると、trueを返します。これは、Apacheの要求のコンテキストでのみfalseを返します。これは私に、symlinkにアクセスできないApacheユーザ(これは_www
)と関係があると思います。この問題を解決するには、私の専門知識の範囲外です。
その他の注意事項:
- はい、私は
FollowSymLinks
は私のApacheの設定でオンになっている、と 実際には、問題のシンボリックリンクが存在するディレクトリは シンボリックリンクそのものです。 Apacheには問題ありません。 PHPis_dir()
までは が使用されます。 - いいえ、PHPアプリケーションを編集することはできません。
is_link()
とreadlink()
に戻ってください。 - 私のSnow Leopard/MAMPセットアップではまったく同じ設定が行われました。
シンボリックリンクは実際にファイルに再帰されるまではファイルとはみなされませんか? – RSully