2014-12-31 5 views
0

С помощью this link я пытался иметь успокоительный приложение, но это не работает, и всегда возвращается это:Yii2 успокоительное не работает

Объект не найден!

Запрашиваемый URL-адрес не был найден на этом сервере. Если вы указали URL вручную, пожалуйста,>> проверьте правописание и повторите попытку.

Если вы считаете, что это ошибка сервера, обратитесь к веб-мастеру. Ошибка 404 локальный Apache/2.4.4 (Win32) OpenSSL/1.0.1e PHP/5.5.1

Я называю это так: localhost/restful/web/users

Edit:

Этот вид звонка также не работает: localhost/restful/web/?r=users

Он вернулся:

Не найдено (# 404) Страница не найдена.

Указанная ошибка возникла, когда веб-сервер обрабатывал ваш запрос.

Пожалуйста, свяжитесь с нами, если вы считаете, что это ошибка сервера. Спасибо.

+0

Почему вы указываете полный путь с помощью «сети»? Вы настраивали URL-адреса? – arogachev

+0

Я настроил url как эту ссылку http://www.yiiframework.com/doc-2.0/guide-rest-quick-start.html и потому, что программа yii будет запускаться в URL-адресе, который содержит веб-сайт, я вызываю его с помощью веб-адреса в пути – desatir7316

+0

, можете ли вы поделиться содержимым 'config/web.php' и вашего контроллера? –

ответ

1

Это мой config/web.php:

<?php 

$params = require(__DIR__ . '/params.php'); 

$config = [ 
    'id' => 'basic', 
    'basePath' => dirname(__DIR__), 
    'bootstrap' => ['log'], 

    'components' => [ 
     'urlManager'=>[ 
      'enablePrettyUrl' => true, 
      'enableStrictParsing' => true, 
      'showScriptName' => false, 
      'rules' => [ 
       ['class' => 'yii\rest\UrlRule', 'controller' => 'user'], 
      ], 
     ], 
     'request' => [ 
      // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation 
      'cookieValidationKey' => 'a', 
      'parsers' => [ 
       'application/json' => 'yii\web\JsonParser', 
      ], 
     ], 
     'cache' => [ 
      'class' => 'yii\caching\FileCache', 
     ], 
     'user' => [ 
      'identityClass' => 'app\models\User', 
      'enableAutoLogin' => true, 
     ], 
     'errorHandler' => [ 
      'errorAction' => 'site/error', 
     ], 
     'mailer' => [ 
      'class' => 'yii\swiftmailer\Mailer', 
      // send all mails to a file by default. You have to set 
      // 'useFileTransport' to false and configure a transport 
      // for the mailer to send real emails. 
      'useFileTransport' => true, 
     ], 
     'log' => [ 
      'traceLevel' => YII_DEBUG ? 3 : 0, 
      'targets' => [ 
       [ 
        'class' => 'yii\log\FileTarget', 
        'levels' => ['error', 'warning'], 
       ], 
      ], 
     ], 
     'db' => require(__DIR__ . '/db.php'), 
    ], 
    'params' => $params, 
]; 

if (YII_ENV_DEV) { 
    // configuration adjustments for 'dev' environment 
    $config['bootstrap'][] = 'debug'; 
    $config['modules']['debug'] = 'yii\debug\Module'; 

    $config['bootstrap'][] = 'gii'; 
    $config['modules']['gii'] = 'yii\gii\Module'; 
} 

return $config; 

И контроллер:

<?php 

namespace app\controllers; 

use yii\rest\ActiveController; 

class UserController extends ActiveController{ 
    public $modelClass = 'app\models\User'; 
} 

Также создана моя модель по GII.

Проблема решена путем включения завитка и использования его в контроллере.

+0

, включив завиток и используя его в моем контроллере, проблема решена – desatir7316

0

Есть такая же ошибка (стил получение 404 не найдено по каждому запросу) должны решить, что добавление .htaccess, чтобы (мой юй путь) веб-папку/(то же самое, где у вас есть index.php):

# use mod_rewrite for pretty URL support 
RewriteEngine on 

# If a directory or a file exists, use the request directly 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

# Otherwise forward the request to index.php 
RewriteRule . index.php 

Это связано с тем, что при создании чистого экземпляра Yii2 у вас нет файла .htaccess (на мой взгляд, вероятно, причина безопасности).

для меня: (позволяя локон и использовать его в мой контроллер), установленный с помощью композитора

composer require --prefer-dist linslin/yii2-curl "*" 

использования в контроллере

<?php 

namespace app\controllers; 

use yii\rest\ActiveController; 
use linslin\yii2\curl;//this was added 

class UserController extends ActiveController 
{ 

Не работать. Возможно, это помогает кому-то :)

Смежные вопросы