1

別の非常に初心者のウェブサイトの質問. 単純な php サイトの背後にあるファイル構造を見ると、次のようになります。

PHP ベースの Web サイトのファイル構造

フォルダ/ファイル構造の規則?

次のような構造を使用することを提案します。

htdocs/
    /Assets/
    /CSS
    /JS
    /func/func.php
    _newpost.php
    tags.php
    index.php

SEO の場合、コンテンツのサブカテゴリにはより「論理的な」URL が好まれると思います。

eg. www.example.com/tags.php?t=celebrity

はあまり好ましくありません:

www.example.com/tags/celebrity

URL に関しては、tags.php ファイルを htdocs/tag 内に配置するか、mod_rewrite を使用して目的の効果を得ることができます。つまり、.php ファイルをサブフォルダー内に移動すると、func/func.php および _newpost.php などの他の「アクション」を「含める」場合に問題が発生します。

質問- PHP ファイルの保存先に規則はありますか? それらはすべてルートにある必要がありますか?_newpost.php の場合 - アクションとリダイレクトを実行するファイル。これらすべてがどこに置かれるべきかについての規則はありますか? では、mod_rewrite は URL の「見た目」を処理する必要がありますか?

どうもありがとう - いつもありがとう、マット

4

2 に答える 2

2

URL に関しては、 tags.php を特定の場所に配置する必要はありません。mod_rewrite には、希望する効果など、非常に多くの機能があります。

サブフォルダーに移動しても、構造を適切に計画している限り、問題は発生しません。重要なことの 1 つは、php.ini で DOCUMENT_ROOT を定義することです。これにより、$_SERVER['DOCUMENT_ROOT']; を介してサイトのルートにアクセスできます。インクルード内にインクルードを実行する場合、このようにして混乱することはありません。

質問- 私が知る限り、実際には慣習はありません。あなたや将来の開発者にとって、より便利でクリーン/フレンドリーであると思われる方法でファイルを整理できます。あなたが示した構造はかなり一般的ですが。

そうです、通常、フレンドリ URL は、必要に応じて書き換えルールを設定できるため、ディレクトリではなく mod_rewrite で処理されます。

于 2012-11-20T14:01:46.247 に答える
1

ほとんどの重要な Web アプリは MVC フレームワークを使用しており、これには常に何らかの形式の URL ルーティング機能が付属しているため、質問には多少の負荷がかかります。これらのルーターを使用すると、着信 URL を物理ファイルから切り離すことができるため、news.php のようなmysite.com/newsものは必ずしも一致しません。ルーター自体は、バックエンド コードの一部であり、mod_rewrite (またはそれに相当する IIS) の一部です。

PHPファイルがどこに行くべきかについては、コード構造によって異なります。多数のスタンドアロン スクリプトがある場合、それらはすべて、エンド ユーザーがアクセスできる場所 (つまり、Web ルートのどこか) に配置する必要があります。include()着信 URL を読み取り、その要求に基づいて適切なスクリプトを実行するインデックス ファイルがある場合、インデックスのみが Web ルートに存在する必要があります。

db 資格情報などの機密データは、Web ルートの外に配置し、include()d するか、別の方法で読み込む必要があります。

于 2012-11-20T14:03:17.460 に答える