Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Yii] i problem na starcie nauki - controller
Forum PHP.pl > Forum > PHP > Frameworki
smiady
W folderze controllers utworzyłem plik StronaController.php, a w nim kod:
  1. <?php
  2. class StronaController extends CController {
  3. function actionIndex() {
  4. echo 'Witamy na stronie !';
  5. }
  6.  
  7. function actionInformacja() {
  8. echo 'To jest przykładowa informacja.';
  9. }
  10. }


I mam błędy 404 przy linku:
http://localhost/yii/test/strona/
oraz
http://localhost/yii/test/strona/informacja/

plik .htaccess to:
  1. RewriteEngine on
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteRule . index.php


a w pliku main.php odkomentowałem ten fragment kodu:
  1. 'urlManager'=>array(
  2. 'urlFormat'=>'path',
  3. 'rules'=>array(
  4. '<controller:\w+>/<id:\d+>'=>'<controller>/view',
  5. '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
  6. '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
  7. ),
  8. ),


Co jest nie tak ? Nie mam pomysłu wg. kursu powinno być wszystko ok ...

Już znalazłem działa, ale pod takim linkiem:
http://localhost/yii/test/index.php/strona/informacja

jak pozbyć się index.php ? pewnie w .htaccess należy wprowadzić zmianę ?

Boshi
Strona to twój kontroler a informacja to metoda kontrolera dlatego działa teraz.
smiady
Tak, ale chce, aby działało normalnie, czyli pod takim linkiem:
http://localhost/yii/test/strona/informacja

a nie jak teraz tylko pod takim:
http://localhost/yii/test/index.php/strona/informacja

Ogólnie dziwnie to jest ustawione.
Turson
'showScriptName'=>false
smiady
Okazało się że plik .htaccess trzeba było przenieś do głównego katalogu test, a był fabrycznie w protected.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.