Необходимо сделать страницу новостей.Я сделал, на локальном сервере (открытый сервер) все работает отлично, и при загрузке на хост-сервер выдает ошибку 404.Версии php практически идентичны (7.0.2 на хостинге и 7.1+ на локальной).В чем может быть ошибка?
контроллер
public function actionNews()
{
$category = NewsCategory::find()->where(['slug' => 'news'])->one();
$news = $category->getChilds()->where(['status' => 'published']);
$countQuery = clone $news;
$pages = new Pagination(['totalCount' => $countQuery->count(), 'pageSize' => 8]);
$models = $news->orderBy('date DESC')->offset($pages->offset)
->limit($pages->limit)
->all();
return $this->render('news', [
'model' => $models,
'pages' => $pages,
]);
}
public function actionView($slug)
{
$model = News::findOne(['slug' => $slug]);
if(!$model = News::findOne(['slug' => $slug])){
throw new NotFoundHttpException('Page not found');
}
return $this->render('view', [
'model' => $model
]);
}
маршрутизация
'/news' => '/blog/news',
'/news/<slug:[A-Za-z0-9 -_.]+>' => 'blog/view',
'/view' => '/blog/view',
просмотр (файлы находятся в папке блога)
<?php
use yii\helpers\Html;
use yii\helpers\Url;
use yii\widgets\LinkPager;
$this->title = Yii::$app->name . " | Новости";
$this->title = Yii::t('app','Новости');
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="container">
<h3>News company</h3>
<div class="row news-list">
<?php foreach($model as $item) { ?>
<div class="col-sm-3">
<a class="news-img" href="<?=Url::toRoute(['/blog/view', 'slug' =>
$item->slug])?>">
<img src="<?= $item->getImage()->getUrl('920x800') ?>" alt="">
</a>
<a href="#"><?= $item->name; ?></a>
<div class="small grey">
<p><i class="fa fa-calendar"></i> <?= date('d.m.Y',
strtotime($item->date)) ?></p>
<p><?= mb_substr($item->text, 0, 80); ?>...</p>
</div>
</div>
<?php } ?>
</div>
<?
echo LinkPager::widget([
'pagination' => $pages,
]);
?>
</div>
.htaccess
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/admin
RewriteRule ^admin\/?(.*) /backend/web/$1
RewriteCond %{REQUEST_URI} !^/(frontend/web|backend/web|admin)
RewriteRule (.*) /frontend/web/$1
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /frontend/web/index.php
RewriteCond %{REQUEST_URI} ^/backend/web
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /backend/web/index.php