• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シンボリックリンクでマルチサイトを実現)

シンボリックリンクでマルチサイトを実現する方法

このQ&Aのポイント
  • 全国向けのサイト構築を考えています。トップページは、都道府県を選択するようにし、都道府県のサイトは別ドメインで実現しようと思ってます。
  • それぞれのデザインや機能などは同じなので、シンボリックリンクでソースを一元化したいと思っています。しかし、シンボリックリンクを作成し、それぞれのページで '__FILE__' を参照したところ、元ソースのパスとなっていますので区別ができません。
  • どのように区別すればいいかわからないので、アドバイスをいただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • memphis
  • ベストアンサー率40% (975/2395)
回答No.3

投稿する時は、サーバの動作環境、開発する言語など詳細に書かないと正しい解答を得られないのでご注意下さい。 他の書き込みから判断するとPHPで作成しているのですよね? __FILE__の結果が同じってことなら、PHPのバージョンがPHP 4.0.2 以降では? それはPHPの仕様なので普通は使いません。 こういう場合は環境変数から判断します。

rally
質問者

お礼

phpのカテゴリなので、言語についての記述は省略してしまいましたが、 バージョンによっても変わってくるので、記述は必要ですね。 すみませんでした。 PHP 5.2.6です。 __FILE__は絶対パスになるんですね。

その他の回答 (3)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.4

サブドメインのように見えるのはあくまでも例ということですね? であれば、シンボリックリンクは使わないほうがよいでしょう。 共通部分を書いたファイルを用意しておいてincludeするのが妥当では?

rally
質問者

お礼

シンボリックリンクとincludeの両方を使って実現できました。(^^ トップのindex.phpをhokaidoのフォルダでindex_com.phpとしてシンボリックリンク。 hokaidoのindex.phpは実ファイルで、index_com.phpをincludeする。 hokaidoのindex.phpで代入させることで区別できました。 ありがとうございました。

  • nick9090
  • ベストアンサー率26% (102/378)
回答No.2

スパムサイトの量産は迷惑なので止めてくださいね。

rally
質問者

補足

私が構築しようとしてるのは、スパムサイトではありません。 ご心配には及びませんよ。(^^

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>シンボリックリンクでソースを一元化 今回の例のどの辺がシンボリックリンクをつかっているのでしょうか? サブドメインを作成して、バーチャルドメインを組んでいるのではないのでしょうか? >それぞれのページで "__FILE__" を参照したところ、 >元ソースのパスとなっていますので このへんも何をなさりたいのかよくわかりません。 具体的に何のhttpサーバーでどのような処理をなさっているのか補足 したほうがよいでしょう

rally
質問者

補足

#ちょっと説明不足でしたかね。(^^; トップページのソースを下のディレクトリに置いてあるとします。 /home/hogehoge/htdocs/index.php URLは、 http://www.hogehoge.com/index.php 北海道用のページは、 /home/hogehoge/htdocs/hokaido/index.php となりますが、トップページのソースとほぼ同じですので、一元化したいのです。 なので、シンボリックリンクを使っています。 ln -s /home/hogehoge/htdocs/index.php /home/hogehoge/htdocs/hokaido/index.php ほぼ同じとは言え、若干の違いはありますので、どのディレクトリのファイルがアクセスされてるのか、 区別する必要があります。 そこで、"__FILE__"を使おうと試みましたが、元ファイルでもシンボリックリンクのファイルでも、 同じく、元ファイルのPATHしか得られませんでした。 これでは区別ができません。 最初にアクセスするindex.phpはシンボリックリンクを使わずに、 デザイン部分のみをindex.tplという形で作成し、シンボリックリンクで一元化はできそうですが、 現在のソースの手直しが発生するので、できれば避けたいと考えています。

関連するQ&A