Narzędzia użytkownika

Narzędzia witryny


konfiguracje

Konfiguracja środowiska

Alias do katalogu /pliki (common/config/main.php)

<?php
 
return [
   ...
    'aliases' => [
        ...
        '@pliki'=>realpath(dirname(__FILE__).'/../../pliki')
    ],

Ścieżka do pliku

$path = Yii::getAlias('@pliki') . '/plik.pdf';

Debuger

backend/config/main.php

...
 
'components' => [
         ...
 
        'log' => [
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                [
                    'class' => 'yii\log\FileTarget',
                    'levels' => ['error', 'warning'],
                ]
            ],
        ],
 
        ...
    ],

backend/config/main-local.php

<?php
 
$config = [
    'components' => [
        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '23dYgoKbKertzSurkz6NwWgk2ntW9NII',
        ],
    ],
];
 
 
//if (!YII_ENV_TEST) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = [
        'class' => 'yii\debug\Module',
        'allowedIPs' => ['*'],
    ];
 
   $config['bootstrap'][] = 'gii';
   $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
    ];
//}
 
return $config;

backend/web/index.php

<?php
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'prod');
 
require __DIR__ . '/../../vendor/autoload.php';
require __DIR__ . '/../../vendor/yiisoft/yii2/Yii.php';
require __DIR__ . '/../../common/config/bootstrap.php';
require __DIR__ . '/../config/bootstrap.php';
 
$config = yii\helpers\ArrayHelper::merge(
    require __DIR__ . '/../../common/config/main.php',
    require __DIR__ . '/../../common/config/main-local.php',
    require __DIR__ . '/../config/main.php',
    require __DIR__ . '/../config/main-local.php'
);
 
(new yii\web\Application($config))->run();

Spolszczenie Yii2

Plik common/config/main.php

<?php
 
return [
    'language' => 'pl-PL',
    'name' => 'Nazwa aplikacji',
    'timezone' => 'Europe/Warsaw',
    ...

Konfiguracja przyjaznych adresów

W pliku common/config/main-local.php dopisać

'urlManager' => [
     'class' => 'yii\web\UrlManager',
     'showScriptName' => false,   // ukrycie nidex.php
     'enablePrettyUrl' => true,
     'rules' => array(
        '<controller:\w+>/<id:\d+>' => '<controller>/view',
        '<controller:\w+>/<action:\w+>/<id:\d+>' =>'<controller>/<action>',
        '<controller:\w+>/<action:\w+>' => '<controller>/<action>'),
  ],
  'rules' => array(
   '<controller:\w+>/<id:\d+>' => '<controller>/view',
   '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
   '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
   '<controller:\w+>/<action:\w+>/<id:\d+>/<idk:\d+>' => '<controller>/<action>',
   '<controller:\w+>/<id:\d+>/<idk:\d+>' => '<controller>/view',
   '<controller:\w+>/<action:\w+>/<id:\d+>/<ids:\w+>' => '<controller>/<action>',
 ),

Parametr rules określa własny zdefiniowany adres i parametry: nazwy, typ i ilość parametrów (można zostawić pustą tablicę).

Powyższy przykład definiuje następujące parametry:

  • id - integer
  • idk - integer
  • ids - string

http://domena/controller/action/id/idk/ids

http://www.test.pl/artykuly/lista/10/12/glowna

Aby przechwycić w kontrolerze te parametry należy wpisać je jako parametry funkcji akcji

public function actionArtykuly($id,$idk,$ids){
 
...
 
}

Nazwy parametrów i ich typy określone są w rules.

.htaccess

w folderach frontend/web i backend/web umieścić plik .htacces zawierający:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php 

Konfiguracja serwera Apache

<VirtualHost *:80>
        ServerName test.domena.pl
        DocumentRoot /var/www/advanced/frontend/web

        <Directory /var/www/advanced/frontend/web>
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
        </Directory>
</VirtualHost>

plik hosts (linux)

127.0.0.1 test.domena.pl

konfiguracje.txt · ostatnio zmienione: 2024/09/15 16:22 przez 127.0.0.1