2012-02-09 6 views
0

Apache上でCF9 Developerを実行していて、サイトが最終的にリモートでホストされる複数のドメインのコンピュータ上でテストサーバーを実行しています。すべて動作しますが、私は現在のところ、 "/"ルートマッピングのみを使用することができます。ここに私のローカルドメインは、以下のとおりです。Coldfusion:テスト用の複数のlocal.domains。

  • local.domain1.com
  • local.domain2.comなど
  • ...

そして、ここでは、物理的なパスがある:

  • C:\ www \ domain1.com \
  • C:\ www \ domain2.com \

CF管理者には、次のアクティブColdFusionマッピングがあります(論理パス: "/" - ディレクトリパス: "C:\ www.domain1.com \")。これはlocal.domain1.comでも有効です。ただし、CF管理者には論理パスを1つだけ追加できます。

つまり、ドメイン1は、cfinclude template = "/ anyrootfolder/anyfile.cfm"がrootにマップされているため、正常にロードします。 "/"ルートがマップされていないため、cfinclude template = "/ anyrootfolder/anyfile.cfm"を使用しようとすると、ドメイン2,3などが失敗します。

同じサーバーに複数の「/」をマップする方法はありますか?

EDIT:アルの答えの下の私のコメントで言及されているように

、私はcfincludeタグ上の絶対パスを使用するたびに、すべてのドメインがドメイン1のファイル構造から奪ったことを発見しました。 CF管理者で、論理パス "/"とディレクトリパス "C:\ www \ domain1.com \"を使ってActive CFマッピングを削除しましたが、これはやっているようです。私はそれがなぜそこにあったのか分からない(おそらく、デフォルトのCFセットアッププロセスの一部として)?とにかく、私はテストサイトにそれを削除した結果として何のエラーも見られません。そして、私の他のドメインは今や期待どおりに動いています(おそらく私は既にApacheの設定でドキュメントルートを設定していたからでしょうか?皆さんありがとう!

答えて

2

このマッピングはまったく必要ないと思います。私のローカルマシンでは、local.domainX.comのエントリをHostsファイル(C:\ windows \ system32 \ drivers \ etc \ host)に入れ、それぞれにApacheの仮想ディレクトリを設定します。

NameVirtualHost *:80 

<VirtualHost *:80> 
DocumentRoot "C:\www\domain1.com" 
ServerName local.domain1.com 
</VirtualHost> 

Apacheの設定に関する詳細が必要な場合は教えてください。

+0

ありがとうございます。私は両方に精通しており、すでにそれらを持っています。運がない。 – Michael

1

/のアプリケーションレベルのマッピングを使用できませんか?テストマシン上で複数のサイトで同じプロダクション・サーバ上の複数のサイトではないだけで扱う長い時間前にこれとのApplication.cfc

<cfset THIS.mappings["/"]="C:\www\domain2.com\"> 
+0

ありがとうございます。これを試して、それは動作していません。 application.cfcファイルが読み込まれていることはわかっています。なぜなら、文法を一気に駄目にするとエラーが発生するからです。しかし、絶対パス( "/")を使用してファイルをインクルードしようとすると、同じエラーが表示されます。エラーメッセージ:「含まれているテンプレートC:/www/domain2.com/plugins/file.cfmが見つかりませんでした」私は、この場所にfile.cfmが存在することを100%肯定しています。 – Michael

+0

あなたのパスが正しく表示されているようです。興味深いもの: – ale

+0

私はもう少しテストを行いました。絶対パスを使用するlocal.domain2上のすべてのは、実際にはdomain1から取得しているようです(同じファイル/フォルダ構造を持っているので、同じファイルがたくさん同じ場所にあります)。それで、なぜ絶対cfincludesのいくつかがうまくいくのか、他のものはそうでないのかを説明します。 – Michael

0

I死で

。私の最終的な解決策は、各サイトの基本的な3文字の「接頭辞」マッピングを作成することでした。このように、典型的なcfincludesとして

は...

<のcfincludeテンプレート= "/ TQS /家だろう。cfmが、これはまた、あなたがファイル、画像、およびあなたの他のサイトのいずれかに保存される可能性のある他のリソースを参照することを可能にすること。

」>
<のcfincludeテンプレート= 『/ bqo/home.cfm』 >

注意

< cfcontent file = "#expandpath("/bqo/images/pixel.gif ")#" type = "...

関連する問題