絶対パスを含めることは、PHP 5.2.9でも同じように機能するはずです(5.3を試したことはありませんが、これは変わらないはずです)。絶対パスを指定しているため、include_pathディレクティブには関係がありません。
もう少し情報を教えていただけますか?どのPHPバージョン、プラットフォーム、およびインクルードから返されるエラーが含まれるかは、すばらしいスタートです。
Linux:RHEL 5 PHP:バージョンPHP 5.2.9エラーメッセージは次のとおりです。PHP警告:require(/conf/common.php):ストリームを開くことができませんでした:/ var / www / vhosts /DOMAIN/にそのようなファイルまたはディレクトリはありませんhttpdocs / tell-a-friend-fns.php on line 63 PHP致命的なエラー:require():必要な'/conf/common.php'(include_path ='。:/ usr / share / pear:/ usr / libを開くことができませんでした) /var/www/vhosts/DOMAIN/httpdocs/tell-a-friend-fns.phpの63行目の/php:/ tmp')
さて、あなたのアプリケーションは/ var / www / vhosts / DOMAINにあり、/ conf / common.phpを探しているようですよね?あなたのファイルが実際に/conf/にあるのか、それとも/ var / www / vhosts / DOMAIN / conf /にあるのかわかりません(情報が与えられているので、後者を想定しています)。/ conf /にある場合は、Webサーバーユーザーがそのディレクトリを読み取れることを確認してください。そうでない場合は、インクルードを/var/www/vhosts/DOMAIN/httpdocs/conf/common.phpに変更します。
さらに良いことにinclude '../conf/common.php
、要求されたページのメインスクリプトに関連してcommon.phpが存在する場所によっては、実行できる場合があります。
先頭に「/」が付いているパスは、Webサーバーのドキュメントルートではなく、ファイルシステムに対して絶対的なものであることに注意してください。「/」なしで指定されたパスは、実行中のスクリプト(現在のファイルではない)からの相対パスと見なされます。私の推測では、パスの前に$ _SERVER ['DOCUMENT_ROOT']を付けると、絶対パスが相対パスに変更されます。アップグレード中に削除されたjailed環境(仮想ホストで一般的)で操作していない限り、絶対パスがアップグレード前の相対パスとして機能する理由がわかりません。