2016-11-30 6 views
0

後に404を受信すると、404エラーたとえばコメントを外しenablePrettyUrl後のコメントを解除enablePrettyUrl YII2

取得:

要求されたURL /サイト/インデックスは、このサーバー上に見つかりませんでした。 yiibasic.comで

のApache/2.4.7(Ubuntuの)サーバーは

私は再びそれをコメントするポート80は、すべてが問題が何であるかを理解することはできません

'components' => [ 
    'urlManager' => [ 
     'enablePrettyUrl' => true, 
     'showScriptName' => false, 
     'rules' => [ 
     ], 
    ], 
] 

を進めています。
.htaccessファイル:

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule . index.php 
+0

Apacheの設定とログを追加してください。 – raina77ow

+0

質問は編集されました – wiaim

答えて

0

(Yii2)URLマネージャは、2つのURLの形式をサポートします。

デフォルトのURL形式を、 かなりのURLフォーマット。デフォルトの 'enablePrettyUrl' で

は、次のURL形式を持っているという意味ではfalseに設定されている

your/index.php?r=post%2Fview&id=100 

あなたのコメントを外し 'enablePrettyUrl' => trueの場合、

'components' => [ 
    'urlManager' => [ 
    //'enablePrettyUrl' => true, 
    'showScriptName' => false, 
    'rules' => [ 
    ], 
    ], 
] 

あなたはの形式を有効にした場合prettyUrlのように:

/index.php/post/100 

のように2つの形式が異なるので、explを参照してくださいあなたが有効またはかなりのURLを無効にurlManager形式を変更する際のフォーマットに基づいたICTコールが

あなたはURLはこのヘルパーYii2でurlHelper

use yii\helpers\Url; 
echo Url::to(['post/view', 'id' => 100]); 

を使用してこの問題を回避呼び出すことができます.. 404エラーを返しますあなたは、基本的なtemplaを使用している場合(あなた./webフォルダに.htaccessファイルを追加した後、ここhttp://www.yiiframework.com/doc-2.0/guide-runtime-routing.html

+0

どこでこのヘルパーを使うべきですか? configまたは各ファイルで明確にしてください – wiaim

+0

prettyUrlステータスを変更すると、エラーを回避するためにUrl :: to(各呼び出しで9を使用する必要があります)。yii2ルーティングの簡単なガイド – scaisEdge

0

yii2ルーティングの簡単なガイドを見つけることができます使用

状態を有効にかなりのURLに応じて適切なURLを作成しますte)。web.php設定ファイルのurlManagerセクションにいくつかのルールを追加する必要があります。下記を参照してください。

'urlManager' => [ 
      'enablePrettyUrl' => true, 
      'showScriptName' => false, 
      'enableStrictParsing' => false, 
      'rules' => array(
       '<controller:\w+>/<id:\d+>' => '<controller>/view', 
       '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>', 
       '<controller:\w+>/<action:\w+>' => '<controller>/<action>', 
      ), 
     ], 
関連する問題