問題タブ [yii-url-manager]
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.
redirect - Yii URL マネージャーの無限リダイレクト ループ
私はこれで立ち往生しています...
私のローカル マシン (IIS 7.5 with ISAPI rewrite 3、Php 5.5) で正常に動作する Yii プロジェクト (Yii 1.1.14) があります。
ただし、テスト サーバー (Linux、Apache 2.2、Php 5.5) では、リダイレクト以外はすべて機能します。ログイン コントローラーとインデックス コントローラーが相互にリダイレクトしているため、ホームページで無限のリダイレクト ループが発生しています (これはまったく発生しないはずです)。
ログイン アクションを URL (www.mysite.com/site/login) に入れると、ログインできます。しかし、コントローラー アクションでリダイレクトを行うと (たとえば、データを更新した後)、リダイレクト先のルートではなく、ホーム URL にスローされます。.htaccess 書き換えルールを使用しても違いはありません。そのため、Yii の構成と apache 固有の構成を組み合わせたものに違いないと思います...
これは私の urlManager 設定です:
これは私の .htaccess ファイルです:
そして、無限ループを引き起こしている私のサイト/ログインおよびサイト/インデックス アクション (ローカル マシンで期待どおりに動作します):
ルートの直接呼び出しは機能しますが、リダイレクトは機能しません。
編集:から に切り替える'urlFormat'=>'path'
と'urlFormat'=>'get'
、ルーティングが機能します。
yii - URL の Yii UrlManager 部分レンダリング
次のように、いくつかのパラメーターをクエリ文字列として使用してURLを作成する必要があります。
site.com/controller/action/param1/param2?param3=値¶m4=値
誰かがこの問題で私を助けることができますか?
yii - Yii は URL を param/param/param/ から param/param?param に変換します
次のような URL があるとします。
site.com/param1/value1/param2/value2/param3/value3/param4/value4
ユーザーが URL 行に書き込んだときに、この URL を次のように変換する必要があります。
site.com/param1/value1/param2/value2?param3=value3¶m4=value4
PS - パラメータの数は可変です。
どうすればいいですか?
php - YII の Urlmanager と Controller::createUrl のバグ
config.main に urlmanager ルールの次のルールがあります。
次に、コードで次を使用します。
と
次に、生成された:site.ru/our_contacts - 動作する site.ru/test - 動作しない
Controller::createUrl が次のリンクを生成する設定のルールを設定する方法:
yii - 末尾の追加スラッシュを削除する方法 yii
を使用する場合
http://www.sitename// AND http://www.sitename//pageのように URL に末尾のスラッシュを追加しています。
2 つのスラッシュを除外する必要があること、Application url manager は次のとおりです。
.htaccess ルール
php - Yii アプリケーションは localhost では正常に動作しますが、GoDaddy.com では「見つかりません」というエラーがスローされます
私の Yii サイトは、ラップトップ (localhost) で実行すると、完全に正常に動作します。しかし、GoDaddy.com にコピーしてそこから実行すると、次のエラー メッセージが表示されます。
見つかりません
要求された URL /website/Search_Best_Boat_Deals は、このサーバーで見つかりませんでした。
さらに、ErrorDocument を使用して要求を処理しようとしたときに、404 Not Found エラーが発生しました。website.com ポート 80 の Apache サーバー
私のmain.php
構成ファイルには、URL管理のための次の構成があります
私の.htaccess
ファイルは次のとおりです。
何が間違っている可能性がありますか?