URL-Manager zeigt 404-Fehler auf der Kontaktseite an

I'm trying to make my url look like this mysite.com/contact unfortunately it shows a 404 error on the contact page. the login page works tho. the file is located in protected/view/site/contact.php

'urlManager'=>array(
                'urlFormat'=>'path',
                //'urlSuffix'=>'.html',
                'rules'=>array(
                    '' => 'site/page',
                    '' => 'site/',
                    '' => 'user/',
                    '/'=>'/view',
                    '//'=>'/',
                    '/'=>'/',
                ),
                'showScriptName' => false,
            ),
0
Du meinst model/contactForm.php ?
hinzugefügt der Autor user2636556, Quelle
@secretlm danke! funktioniert jetzt.
hinzugefügt der Autor user2636556, Quelle
Sie müssen sicherstellen, dass Sie actionContact in Ihrem SiteController haben!
hinzugefügt der Autor secretlm, Quelle
Hast du eine Kontaktaktion?
hinzugefügt der Autor Alex, Quelle
Sie müssen Kontaktaktion haben, um diesen Fehler zu entfernen.
hinzugefügt der Autor Ram Krishna Chaulagai, Quelle

3 Antworten

Ich mache meine so

'contact' => array('site/contact'),
0
hinzugefügt

stellen Sie sicher, dass Sie dies in Ihrer SiteController.php haben

/**
 * Displays the contact page
 */
public function actionContact()
{
    $model=new ContactForm;
    if(isset($_POST['ContactForm']))
    {
        $model->attributes=$_POST['ContactForm'];
        if($model->validate())
        {
            $name='=?UTF-8?B?'.base64_encode($model->name).'?=';
            $subject='=?UTF-8?B?'.base64_encode($model->subject).'?=';
            $headers="From: $name <{$model->email}>\r\n".
                "Reply-To: {$model->email}\r\n".
                "MIME-Version: 1.0\r\n".
                "Content-Type: text/plain; charset=UTF-8";

            mail(Yii::app()->params['adminEmail'],$subject,$model->body,$headers);
            Yii::app()->user->setFlash('contact','Thank you for contacting us. We will respond to you as soon as possible.');
            $this->refresh();
        }
    }
    $this->render('contact',array('model'=>$model));
}
0
hinzugefügt
    RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php

Erstellen Sie .htaccess in Ihrem Projektordner mit dem obigen Code

0
hinzugefügt