简单的网址Yii2

时间:2017-08-21 07:23:47

标签: php .htaccess url yii2

Project Yii2 Basic [v2.0.12]:

的.htaccess

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
AddDefaultCharset utf-8

RewriteCond %{REQUEST_URL} !^/(web)
RewriteRule ^assets/(.*)$ /web/assets/$1 [L]
RewriteRule ^css/(.*)$ /web/css/$1 [L]
RewriteRule ^fonts/(.*)$ /web/fonts/$1 [L]
RewriteRule ^js/(.*)$ /web/js/$1 [L]
RewriteRule ^images/(.*)$ /web/images/$1 [L]
#RewriteRule (.*)$ /web/$1
RewriteRule ^(.*)?$ /web/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /web/index.php

web/.htaccess

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . index.php

设置\ web.php

'baseUrl' => '',
'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => false,
    'rules' => [
        // ...
    ],
],

不工作..为什么?!我不明白为什么它不起作用..请告诉我,我的错误是什么?

enter image description here

1 个答案:

答案 0 :(得分:0)

请在config / web.php中设置您的基本网址

use \yii\web\Request;

$baseUrl = str_replace('/web', '', (new Request)->getBaseUrl());
$params = require(__DIR__ . '/params.php');

$config = [
'components' => [
'request' => [
            //DEFINE FOR REST API. RESPONSE SHOULD BE JSON FORMAT
            'parsers' => [
                'application/json' => 'yii\web\JsonParser',
            ],
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => 'basic',
            'baseUrl' => $baseUrl,
        ],
],