問題タブ [zend-route]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Zend Framework: モジュールをサブドメインとして設定
次のようなリンクも取得するルートを作成したいと思います。
- my.site.com(/:コントローラー/:アクション)
- admin.site.com(/:コントローラ/:アクション)
追加しようとしました:
しかし、何も起こりません.. (サーバーが見つかりません)、どうすれば修正できますか?
これに関する zend のドキュメントを読みましたが、まだ機能しません。
php - zendmodリライトまたはルーティング
WebアプリケーションでZendFrameworkを使用しています。次のURLがあります:domain/user/user/username
。最初user
はdefault
モジュール内のコントローラーです。2番目user
はGET
変数です。username
この変数の値です。すべて良い。しかし、使いやすさのために、次のURLが必要ですdomain/user/username
。Zend GETルールでは、これが私の最初のバリアントになるはずです。しかし、おそらく私はmodrewritingまたはZend_Routeでこれを行うことができますか?お願い助けて。
前もって感謝します。
php - Zend Framework 製品カタログ ルート
製品カタログのルートを作成するのに助けが必要です。次のような URL が必要です。
/製品/エレクトロニクス/14
/製品/エレクトロニクス/コンピュータ
/製品/エレクトロニクス/コンピューター/ラップトップ/4
URL の最後の数字は、現在のリストのページ番号を示しています。
zend-framework - zend ルーターのホスト名を使用して複数のサブドメインをルーティングする方法
残念ながら一貫性のない現在のライブ サイトの URL 構造を単純にコピーするために、Zend でルーティングを作成する必要があります。
私がやりたいことは、次のようにサブドメインをルーティングすることです:
www.site.com -> 静的ルーター
a.site.com & b.site.com -> カテゴリ コントローラ
c.site.com & d.site.com -> ロケーションコントローラー
残りのサブドメイン -> ユーザーコントローラー
誰かがこれを解決する方法を教えてくれますか、ありがとう。
アップデート:
最初にFgeに感謝します。あなたの答えに投票してください。うまくいきますが、さらにアドバイスが必要です:
各ルールに多くのサブドメインがあるため、ループでルールを追加するよりも良い方法があります
foreach($subdomains as $a){ $tr = new Zend_Controller_Router_Route_Hostname( "$a.site.com", array( 'module' => 'mod', 'controller' => 'ctrl', 'param_1' => $ )); $router->addRoute($a,$tr); }
http://a.site.com/:b/:cのようなパラメーターを解析するために他のルーティング タイプと組み合わせる方法 (連鎖?) 、param_1 (a)、param_2 (b) に解析したい、param_2 (c)
zend-framework - ルートでモジュール名を指定しない Zend Framework のモジュール固有のルート
モジュール固有のルートをいくつか作成する必要がありますが、ルートでモジュール名を明示的に言及する必要はありません。現在、モジュールごとに個別の構成ファイル (MODULE/configs/module.ini) があり、モジュールのブートストラップでこれらのルートを Zend Framework にプッシュしています。INI ファイルにはルート情報が含まれていますが、ルート内にモジュール名が記載されています。例えば
routes.contents.route = "Contents/(.*)"
routes.contents.defaults.module = コンテンツ
routes.contents.defaults.controller = index
routes.contents.defaults.action = index
+ルートに関するその他の詳細。
モジュール名 ("Contents") がルートに明示的に記載されていることがわかります。私が欲しいのは、ルートでモジュール名の後の部分に言及するだけで、ルートの前にモジュール名が自動的に追加されることです。したがって、後でモジュールの名前を CMS に変更する場合、すべてのルートを「CMS/xxxx」に変更する必要はありません。
zend-framework - Zend Route キャッチオール
助けてください!私は Zend の初心者で、作業中の cms プロジェクトのデフォルト ルーティングを変更したいと考えています。
コントローラーが存在しない場合、zend で「キャッチオール」ルートを作成するにはどうすればよいですか?
次のようなリンクを作成しようとしています。
mydomain.com/slug
mydomain.com/slug1
slug と slug1 をパラメーターとして指定したデフォルト コントローラー (pagesController) に渡すことができるため、DB から適切なコンテンツを取得できます。
どんな助けにも感謝します!! :)
php - Zend: 「ルート」レベルでのルーティング
私は現在、自分のプロジェクトで Zend を使用しています。このプロジェクトにはカテゴリがありました。通常、URL を Zend ルートで書き換えて、自分のページに次のようにアクセスできるようにします: http://site.ext/category/[category-name]/. しかし、SEO の目的で、ルート レベルの URL を作成したいと考えています。つまり、http://site.ext/[カテゴリ名]/ です。
もちろん、Zend は [category-name] という名前のコントローラーを見つけようとします。この問題を回避する最善の方法は何ですか? 「フォールバックコントローラー」のようなものを考えました。ページが見つからない場合は、コールバック コントローラにリクエストを処理させ、カテゴリが存在するかどうかを確認します。そうでない場合: エラー コントローラに進みます。
これが最善の解決策でしょうか? また、私の仲間のプログラマーの意見は?
よろしくお願いします、
マルティン
php - Zend_Controller_Router_Route の問題
URL の最初の部分をトリミングする必要があります
例/param1/12234/module/controller/action
は次のようになります/module/controller/action/param1/12234
で試しました
$router->addRoute('appid', new Zend_Controller_Router_Route('appid/:appid/:module/:controller/:action/', array(), array(2=> "モジュール", 3=> "コントローラー", 4=>「アクション」)));
しかし、うまくいきません!
いくつかは役立ちますか?
zend-framework - zend route で 1 つの文字列を除外
私が定義した
type は「カテゴリ」という単語をキャッチします。定義を前後に入れましたが、仕方がありません。解決策を提供できますか?
regex - ZendRegexルートヘルプ
次の形式でURLを処理するためのZend_Controller_Router_Route_Regexルートを作成しようとしています。
search?q=chicken/page=2
ここで、最初の正規表現サブパターンはでchicken
、2番目のサブパターンは2
です。の2番目の部分page=2
は、最初のページ、つまり。の場合はオプションにしますpage=1
。したがって、などの別のURLsearch?q=chicken
も有効であり、と同等ですsearch?q=chicken/page=1
。
これは成功しなかったものの、私の試みですが、私がやろうとしていることのより良い全体像をあなたに与えるためです。
ここでの問題は、正しい正規表現を作成できないことです。
前もって感謝します。
編集#1
MA4で指摘されているように、正しい正規表現は次のとおりです。'search\?q=([a-zA-Z0-9]+)(?:/page=(\d+))?'
本当の問題はダリルによって指摘されています。ここに、物事を展望するためのもう少し情報があります。
検索テキストボックスとボタン
ボタンを押すたびsearch
に、search?q=[text]リクエストが表示されます。正規表現の一致ルートを強制的に通過させるにはどうすればよいですか?
これが私がやりたいことですが、コードは機能しません