簡単に言うと、#include file の後にはファイルの「相対パス」が続き、#include virtual の後にはファイルの「絶対パス」が続きます。
ここでいう「相対パス」とは、「本体ファイル」が置かれているフォルダからの相対パスです。
#include ファイル
#include ファイルの後にはファイルの「相対パス」が続き、「絶対パス」は使用できません。
file="script/file.inc"、file="../script/file.inc" などの相対パスを使用します。
file="/script/file.inc" などの絶対パスは使用できません。
#include 仮想
#include virtual の後には、ファイルの「絶対パス」、または正式な「相対パス」を続けることができます (いわゆる正式な「相対パス」とは、パスが形式的には「相対パス」であることを意味しますが、まだ「絶対パス」に変換されるため、本質的には「絶対パス」のままです)
virtual="/folder/file.inc" などの絶対パスを使用します。
virtual="folder/file.inc" などの正式な「相対パス」を使用します。これは virtual="/folder/file.inc" に変換されます。
このように記述することもできますが、virtual="folder/file.inc" の代わりに、virtual="/folder/file.inc" などの「絶対パス」形式を使用することをお勧めします。
いくつかの例を挙げて違いについて説明しましょう。
次のようにコードをコピーします。
"インクルード ファイル" と "インクルード ファイル" がルート ディレクトリの同じフォルダーにあると仮定すると、virtual="folder/file.asp" は問題ありませんが、file="folder/file.asp" は間違っています。 。
サイトの下に 2 つのフォルダー (フォルダー 1 とフォルダー 2) がある場合、フォルダー 1 の下にファイル file1.asp があり、フォルダー 2 の下にファイル file2.asp が存在します。file1.asp が file2.asp を呼び出す場合は、file1.asp に次のように記述できます。
<!--#include virtual="/folder2/file2.asp"-->、
この場合に <!--#include file="folder2/file2.asp"--> を使用するのは間違っています。
ご使用の際は以下の点にご注意ください。
#include file を使用するか #include virtual を使用するかに関係なく、パス内で「/」のみ、または「/」のみ、またはその 2 つの混合を使用できます。
例: file="../script/file.inc"、file="../script/file.inc"、file="../script/file.inc"
#include file と #include virtual にはサイト内のファイルのみを含めることができ、サイト外のファイルは含めることはできません。 たとえば、web サイトという名前のサイトがあると仮定すると、virtual="website/file.asp" を使用するのは間違いです。