DOCUMENT_ROOTが完全ではなく、ドメインフォルダーがありません

StackOverflow https://stackoverflow.com/questions/8392524

  •  28-10-2019
  •  | 
  •  

質問

これまで多くのスレッドを検索しましたが、解決策が見つからないようです。私のphpスクリプトの1つで、サーバードキュメントルートを取得しようとしていますが、取得する値が完全ではなく、ドメインフォルダーが欠落しているだけです。ホスティングやその他の共有が原因だと思います。

現在使用している方法は次のとおりです。 ジェネラコディセタグプレ

そして私が得る道は次のようなものです: ジェネラコディセタグプレ

次のようにする必要があることはわかっていますが: ジェネラコディセタグプレ

SCRIPT_NAMEと比較したところ、パスにmydomainが表示されていることがわかりました。

誰かが私を導いてくれることを願っています。

コミュニティに対して同じ質問を1000回も繰り返してくれてありがとう、申し訳ありません。私はここからいろいろ試してみましたが、今のところ何の役にも立ちません。

更新

残念ながら、 DIR でインデックスファイルを使用することはできません。これはワードプレスの設定であり、ワードプレス機能を含む別のフォルダーで作業していますが、そのためにはdocument_rootが必要です。それが役立つなら。

更新

どうやら次の方法で私のケースは解決しました。いつか誰かを助けるかもしれません: ジェネラコディセタグプレ

基本的には、サーバーのセットアップとドメインがサブドメインとして構成されているためです。

参加してくれたすべての人に感謝します。

役に立ちましたか?

解決

PHP 5.3より前は、パスが必要なディレクトリにファイルを配置し、定数を定義できました。 ジェネラコディセタグプレ

5.3以降は、次のことができます。 ジェネラコディセタグプレ

これは、アプリケーションが実行されるたびに含まれるある種のconfig.phpに含まれるという考えです。

マジック定数ドキュメント

他のヒント

更新

設定ファイルで、DOCUMENT_ROOT変数を追加するだけです: ジェネラコディセタグプレ

そしてそれはあなたのためにそれの世話をする必要があります。

古いソリューション

DOCUMENT_ROOTは、サーバーによって設定される環境変数です。したがって、これが共有ホスティング上にある場合、変更することはできません。別の方法として、独自の定数を設定することもできます。そのため、ページに含まれているconfigタイプのファイルでは、次のようなことができます。 ジェネラコディセタグプレ

そして、$_SERVER['DOCUMENT_ROOT']の代わりにその定数を使用します。他のオプションはあなたのホストに連絡してそれについて尋ねることです、多分それは彼らの側の見落としであり、彼らはそれを修正するでしょう。

編集

おそらく、他の人が投稿したように__DIR__を使用する方が良い方法です。これは、DOCUMENT_ROOTをさまざまな項目に設定でき、少なくとも__DIR__を使用すると、毎回正確なディレクトリを取得する必要があるためです。

個人的には、PHPでフォルダーのルートを取得するために、インデックスファイルでこれを使用します: ジェネラコディセタグプレ

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top