1

私は新しい yii アプリを実稼働サーバーにデプロイしています。サーバーは最近、アプリをホストするように構成されており、すべての yii 要件が正常にインストールされています (yii/requirements を実行しました)。問題は、サイト全体でコントローラー/アクションがどれも機能していないが、サイト/デフォルト/インデックスが機能していないことです。サーバーIP経由でアクセスしているので、この62.75.203.71のように書くとメインページ(site(default/index))が表示されるのですが、リンクをクリックしたり別のルートを書いたりすると見つからないというエラーが出ます生成されます。例: 62.75.203.71/site/show

このサイトは私の開発用 PC で正常に動作しています。これが yii の設定がないのか、それともサーバーの問題なのかわかりません。

また、これは私の設定ファイルです:

'urlManager'=>array(
        'urlFormat'=>'path',
        'rules'=>array(
            '<controller:\w+>/<id:\d+>'=>'<controller>/view',
            '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
            '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
        ),
    ),

これが私の .htaccess ファイルの内容です

AllowOverride すべて

そして、404-not found ngnix 1.14 を取得しました!

4

2 に答える 2

0

エラーはあなたcontrollerの名前とあなたがURLでそれらを呼んでいる名前である可能性があります。大文字と小文字が区別されます。

2番目の問題私はあなたがSeoフレンドリーなURLを変更したことを時々直面しましたそしてあなたはそこで正規表現を見なければならないかもしれません

だが

controllersあなたの名前caseがこの有線の問題を引き起こしていると確信しています

たとえば class BookingUsersController extends Controller 、これはあなたのコントローラーです。たとえば、文字とURLで同じ大文字小文字を使用する必要があります。

yii::app()->createUrl('BookingUsers')

これを使用しても機能しません

yii::app()->createUrl('bookingusers')

またはその逆に、そのコントローラーのケースを変更し、どこでも表示します

于 2012-04-15T20:30:49.873 に答える
0

開発サーバーと運用サーバーの間の http 構成の違いを探します。2 つの環境で適用されている URL 書き換えルールに違いがある可能性があります。これにより、コードが生成している URL が適切に解決されなくなります。

于 2012-04-16T00:44:28.597 に答える