ホームページ  >  記事  >  php教程  >  DISCUZ win2003 環境で ./include/common.inc.php にアクセスできません

DISCUZ win2003 環境で ./include/common.inc.php にアクセスできません

WBOY
WBOYオリジナル
2016-06-13 12:04:16899ブラウズ

Script House からのメモ:
理論的には、次の方法が可能ですが、PHP の構成が正しいことを確認することが前提となります。新しいバージョンの PHP、discuz プログラムおよび関連するサーバー関連を使用することをお勧めします。ソフトウェアは jb51.net のダウンロードにあります。

フォーラムでは、過去 2 日間にエラー メッセージが頻繁に報告されています

警告: require_once(./include/common.inc.php) [function.require-
once]: 失敗しましたストリームを開く:
E:hostaydswindex.php の 12 行目にそのようなファイルまたはディレクトリはありません

致命的なエラー: require_once() [function.require]: 必要な
'./include/common を開くのに失敗しました.inc.php' (include_path='.;C:php5pear')
E:hostaydswindex.php の 12 行目

オンラインで確認しましたが、許可リクエストであるはずです。フォーラムが使えるならどうぞ。

解決策 1:

実際、この問題は言うまでもなく非常に複雑です。この問題は、ディレクトリのアクセス許可の問題が原因で発生します。
2003 年の権限設定が通常わかりにくいことは誰もが知っています。
画像で表現される解決策は次のとおりです:
例: フォーラムは WEBROOT の BBS ディレクトリに配置されます。BBS ディレクトリ INTERNET を
ゲスト ユーザー (または指定したユーザー) にのみ提供する場合。上記の問題は、BBS の上位ディレクトリ Webroot に
INTERNET ゲスト ユーザー (または指定したユーザー) のアクセス権がない場合に発生します。
WEBROOT ディレクトリ (フォーラム ディレクトリの上位ディレクトリ) にインターネット ゲスト権限 (または
指定したユーザー) を与えている限り、問題は解決します。
その理由は、すべての PHP ファイルの公式の ./include/ を include/ に変更することで解決できることです。
しかし、それらを 1 つずつ置き換えることはできません。私の個人的な解決策は、親ディレクトリを作成することです。 。

解決策 2:

このサーバーはシステムを再インストールしました
Win 環境で php mysql を構成しましたが、dz (Discuz) フォーラムにアクセスすると、次のエラーが発生しました:
警告: require_once() [function.require-once]: E:mysiteceshiindex.php の 12 行目で
./include/common.inc.php にアクセスできません
警告: require_once(./include/common. inc. php) [function.require-
once]: ストリームを開けませんでした:
E:mysiteceshiindex.php の 12 行目にそのようなファイルまたはディレクトリはありません
致命的なエラー: require_once() [function.require ]:
E:mysiteceshiindex.php の 12 行目で必要な
'./include/common.inc.php' (include_path='d:/php5/includes') を開くことができませんでした
この Web サイトには、問題は、ファイルが見つからないことでした

最終的に解決するまでに長い時間がかかりました
問題は次のとおりです:
1. IIS6.0 で親パスが有効になっていますか?
2. 権限の問題により、ユーザーに権限が与えられます (コンピュータ ディレクトリにも権限が必要であることに注意してください。権限がないと、この問題が発生します)

その他の参照:

フォーラムを自分のサーバーに移動しました。サーバーは win2003 iis php mysql ですが、フォーラムにアクセスすると次の情報が常に求められます:

警告: require_once() [function.require-once]: ./include/common.inc.php にアクセスできませんE:im286index.php の 12 行目
警告 : require_once(./include/common.inc.php) [function.require-once]: ストリームを開けませんでした: E:im286index.php にそのようなファイルまたはディレクトリはありません12 行目

致命的なエラー: require_once () [function.require]: E で必要な './include/common.inc.php' (include_path='d:/php5/includes') を開くことができませんでした: im286index.php の 12 行目
方法 1: インターネットで Baidu も検索しましたが、この問題を抱えている人がかなりいました。問題を解決するために ./include/ を include/ に変更しましたが、読み込みが書き換えられました。長い間苦労した後、権限の問題であることがわかり、すべてが正常であることを全員に思い出させました。

方法 2:
1. IIS6.0 で親パスが有効になっていますか?
2. アクセス許可の問題 (コンピューターのディレクトリにもアクセス許可が必要であることに注意してください)それ以外の場合、この問題が発生します)

方法 3:
これは、上位ディレクトリに全員の読み取り権限を追加しました。しかし、とても時間がかかります。ディレクトリを e:im286bbs に変更し、上位ディレクトリに読み取り権限とアクセス権を与えます。プロンプト:
入力ファイルが指定されていません。

方法 4:
検索。 1 最初の方法は、php.ini の doc_root= をコメント アウトすることです。見てみたら、コメント アウトされていました。これは問題ではありません。2 番目の方法は、アプリケーション プールの問題について説明します。IIS が新しいアプリケーションを作成しました。このサイトのプールを更新すると、Web サイトにアクセスできるようになります。上位ディレクトリのすべてのユーザーの読み取り権限に関連しているかどうかを確認して、再度更新してください。上記と同じであることを確認してから、問題を解決します。

方法 5:
私もこの問題を抱えています。(./include/common.inc.php) を変更しようとしましたが、検索結果が見つかりませんでした。結果は成功しました。問題がある場合は、試してみてください。
common.inc.php 内のすべての './' を '/ (つまり、真ん中のドットを削除します)

方法 6: 究極の解決策
他のプログラムは正常だが、一部の PHP システムにのみ問題がある場合は、例として phpmyadmin を示します。たとえば、現在のディレクトリは d:werrootphpmyadmin です。 phpmyadmin ディレクトリの web ディレクトリに移動し、それを iis に入力します。この問題は、パスを d:werrootphpmyadminweb として見つけることで解決できます。これは、プログラム内での ./ の使用に問題があるはずです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。