4

CF10のRESTサポートを使用して、SEO対応URLのURL Rewrite / ModRewriteの使用を置き換えることはできますか?GETメソッドとPOSTメソッドを定義する薄いレイヤーを<cfinclude>正しいページに記述しますか?

それとも、サーバーに負担がかかりすぎて、Webサーバーに任せて対処するほうがよいでしょうか。

CFMLに入ると、バージョン管理と保守がはるかに簡単になります。

ありがとう

4

3 に答える 3

1

これができたとしても、間違った仕事をするために間違ったツールを採用していると思います。URLの書き換えは、CFサーバーではなく、Webサーバーの仕事であり、Webサーバーは、CFよりもはるかに優れています。CFのRESTインターフェースは、URLの書き換えを行うためではなく、APIを構築するためのものです。

CFを使用してURLの書き換えを処理する場合、404ハンドラーまたはonMissingTemplate()ハンドラーを使用する方が適切です。少なくとも、あなたはその仕事のために意図されたツールを使用しています(最高ではないにしても)。

バージョン管理に関しては....htaccessファイルは、CFMLファイルと同様に単なるテキストファイルです。IISの書き換えモジュールについてはあまり詳しく調べていませんが、テキストファイルを使用して書き換えを構成/維持することはできませんか?明らかにApacheは可能であり、mod_rewrite互換の.htaccessファイルを使用するHeliconのISAPIRewriteモジュールを使用します。

本番パフォーマンスにペナルティを課すアプローチを使用して、開発者の仕事を簡単にしようとしているように思えます。「開発者の生活を楽にする」ことは、本番環境(IMO、明らかに)を危険にさらす理由にはなりません。

于 2012-05-16T05:54:52.060 に答える
1

@Henry REST は、URL の書き換えに代わるものではありません。

まず、REST URL にはフォーマットがあります。

http://localhost:8500/rest/App_Name/Rest_Path

「残り」の部分は必須です。"rest" を変更したい場合は、web.xml で変更できます (URL マッピングの変更)。

App_Name は必須ではありません。サーバーは、デフォルトの REST アプリケーションを持つことができます。デフォルトのアプリケーションの場合、AppName を指定する必要はありません。他の (デフォルト以外の) REST アプリケーションにアクセスするには、AppName を指定する必要があります。admin の Rest Service 登録ページで、アプリケーションをデフォルトにすることができます。

Rest_Path は、CFC と、HTTP 呼び出しで呼び出す必要がある CFC 内の関数を識別します。

これらの URL 形式が受け入れられる場合は、これらの形式の URL を CFC の特定の関数にマップできます。URL に対して HTTP 呼び出しが行われるたびに、対応する CFFunction が呼び出されます。REST を使用して、CFC の関数にアクセスしています。この方法で CFC または CFM に直接アクセスすることはできません。ただし、関数では、必要なものを何でも実装できます (CFC の呼び出し、別の CFM の呼び出しなど)。

この返信はあなたの質問に対する回答ですか?

ありがとう、ポール

于 2012-04-16T13:01:22.080 に答える