1

私は何年もの間PHPコードを書いてきました。そして今、私はたくさんの再利用可能なモジュールを持っています-少なくとも私にとっては。典型的なクラシック-オールドスタイルの開発者:D。しかし、今ではほとんどすべての人がベイク処理されたインスタントフレームワークを使用しており、私のモジュールはある程度再利用できなくなりました。CI、Zend、Cakeなどの現在の有名なフレームワークのほとんど、およびFat-free、Silex、MicroMVCなどのより単純なマイクロフレームワークは、URLルーティング/URLリライトなどと呼ばれる方法を利用します。

しかし...あなたはこの派手なURLルーティングが本当に必要だと思いますか?

これを考えてみましょう:

  • この複雑な複雑な方法を処理するには、どのくらいの作業が必要ですか?正規表現の解析では、比較的重い計算が使用されますね。それは価値がありますか?
  • どのくらいの頻度でURLアドレスを書き込んだり手動で入力したりしますか?ブックマークやハイパーリンクをクリックする代わりに?
  • それは本当に検索エンジンに優しいですか?つまり、検索エンジンがURLパラメータのインデックスを作成するのは問題ないのでしょうか。
  • GoogleやFacebookなどのBIGサイトがまだ「path?var1 = val1&var2 = val2&...」を使用しているのはなぜですか?
  • さまざまなWebサーバーのさまざまな設定はどうですか?Apache / IIS / Nginx / Ligthy?.htaccessをweb.configや別のconfigに移植するなど?? それはより多くの解決策よりも多くの問題を引き起こしませんか?(デバッグなど)

どう思いますか?その派手なURLルーティングを続ける必要がありますか?または、[より単純な]要求パラメーターを使用して[web]の性質に戻る方がよいでしょうか。どんな回答でもありがたいです。

4

3 に答える 3

7
  • 正規表現を介してURLを実行するための計算コストは​​、APCを使用することで軽減されます
  • 手動のURL入力ではありません
  • はい、それはSEOの文脈で影響を及ぼします
  • フロップごとに保存する必要があるため、サイトには1日あたり数十億のリクエストがありません。
  • これが、URLの解析に.htaccessの代わりにフロントコントローラーが使用される理由です。

それはあなたの「ポイント」の世話をする必要があります。

そして、はい、リンクをクリックする前に多くの人が完全なURLを一瞥するので、「きれいなURL」を使い続ける必要があります。完全で理解しやすいURLを見ると、人々はより安全に料金を支払うことができます。

また、かなり多くのプロのPHP開発者が、人気のあるフレームワークを避けようとしています。主な理由は、上記のフレームワークの品質が、コードの品質の点で本当に非常に悪いためです(Symfony2でさえ、利用可能なものの中で最も優れていると考えられていますが、問題があります)。

フレームワークを使用しているからといって、アプリケーションが改善されるわけではありません。代わりに、SOLIDの原則に従い、デメテルの法則を遵守して、適切なOOPに焦点を当てる必要があります。MVCは、ドメインビジネスロジックの表示の分離を実際に解決するもう1つのデザインパターンです。

MVCについて知りたい場合は、MartinFowlerによるGUIアーキテクチャをお読みください。

于 2012-07-18T19:35:00.287 に答える
3

最終的には、特にこれらのMVCを使用した設計アーキテクチャに帰着します。

この複雑な複雑な方法を処理するには、どのくらいの作業が必要ですか?正規表現の解析では、比較的重い計算が使用されますね。それは価値がありますか?

書き換えエンジンの起動には多少のコストがかかりますが、これらのフレームワークの大部分は、ルーティングで正規表現を使用していません。既存のリソースにマップされていないすべてのリクエストをコントローラー(index.phpなど)に盲目的にルーティングし、それを把握させます。そうは言っても、おそらくphpの実行には、書き換えエンジンよりも大きな影響があります。

URLアドレスを書き込む/手動で入力する頻度はどれくらいですか?ブックマークやハイパーリンクをクリックする代わりに?

これの関連性が何であるかわからない。入力するよりも入力する(または覚える)方が簡単http://domain.com/post/intro-to-apacheですhttp://domain.com/post.php?post_id=141か?

それは本当に検索エンジンに優しいですか?つまり、検索エンジンがURLパラメータのインデックスを作成するのは問題ないのでしょうか。

はい、それは本当にそうです、そしてそれは大きな影響を与えます。それだけでなく、リンクが何であるかを人々が簡単に確認できます。

GoogleやFacebookなどのBIGサイトがまだ「path?var1 = val1&var2 = val2&...」を使用しているのはなぜですか?

post_idURIにaのようなものを含めることqと、クエリ文字列にaを含めることには違いがあります。前者は既存のコンテンツに動的にアクセスし、後者は動的なフォーム入力であり、ユーザーが入力するものであれば何でもかまいません

編集:メモ:FacebookURLの書き換えを行い、Wikipediaも同様です。これは、URLを人間が読める形式にするだけでなく、SEOを向上させるためのものです。

さまざまなWebサーバーのさまざまな設定はどうですか?Apache / IIS / Nginx / Ligthy?.htaccessをweb.configや別のconfigに移植するなど?? それはより多くの解決策よりも多くの問題を引き起こしませんか?(デバッグなど)

ルーティングルールは非常に単純です。そして、フレームワークは広く使用されているWebサーバーにそれを提供します。何かカスタムを実行したい場合は、明らかにこれらのルーティングルールを回避する必要がありますが、そもそもWebサーバーの書き換えエンジンに少なくとも十分に精通している必要があります。

于 2012-07-18T19:45:58.523 に答える
0

他に何もないとしても、素敵なURLを持つことは、検索エンジンにとって使用された(そしておそらく部分的にはまだ)重要なことです。リンクを他の人に送った方がいいです。

于 2012-07-18T19:35:17.397 に答える