O Yii2 fornece a URL padrão com frontend/web e backend/web. Em aplicativos da Web reais, exibições de URL como essa não são atraentes, portanto, nesse caso, precisamos remover ou ocultar o frontend/web do URL.
Há várias maneiras de fazer isso; no exemplo abaixo, faremos isso de uma maneira:
- Uso de um host virtual
- Modifique Yii2
1. Host virtual apache
Para ocultar o frontend /web e o backend/web no apache, você pode fazer isso criando um hospedeiro virtual. Abra o arquivo de configuração do apache “…apacheconfextrahttpd-vhosts.conf” com o bloco de notas. Adicione à última linha
<VirtualHost *:80=""> ServerName frontend.bardimin #sesuaikan with yii installation directories created DocumentRoot "C:/xampp/htdocs/yii2-test/frontend/web/" <Directory "c:/xampp/htdocs/yii2-test/frontend/web/"=""> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php DirectoryIndex index.php </Directory> </VirtualHost> <VirtualHost *:80=""> ServerName backend.bardimin #sesuaikan with yii installation directories created DocumentRoot "C:/xampp/htdocs/yii2-test/backend/web/" <Directory "c:/xampp/htdocs/yii2-test/backend/web"=""> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php DirectoryIndex index.php </Directory> </VirtualHost>
Em seguida, edite o arquivo hosts em “C:\Windows\System32\drivers\etc\hosts” com o bloco de notas e adicione-o à última linha
#sesuaikan with ServerName as above 127.0.0.1 frontend.bardimin 127.0.0.1 backend.bardimin
Para acessar os resultados pelo navegador, digite o endereço de URL da seguinte forma:
Frontend: http://frontend.bardimin/ –
backend: http://backend.bardimin/
Outros artigos interessantes
2. ModificarYii2
A segunda maneira é criar cópias de diretório dos arquivos “assets” e “css”, bem como dos arquivos “index.php” que existem no diretório “frontend/web” para o diretório raiz da instalação do Yii.
Em seguida, abra o arquivo index.php e copie o seguinte código.
<?php defined('YII_DEBUG') or define('YII_DEBUG', true); defined('YII_ENV') or define('YII_ENV', 'dev'); require(__DIR__ . '/vendor/autoload.php'); require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php'); require(__DIR__ . '/common/config/bootstrap.php'); require(__DIR__ . '/frontend/config/bootstrap.php'); $config = yiihelpersArrayHelper::merge( require(__DIR__ . '/common/config/main.php'), require(__DIR__ . '/common/config/main-local.php'), require(__DIR__ . '/frontend/config/main.php'), require(__DIR__ . '/frontend/config/main-local.php') ); (new yiiwebApplication($config))->run();
Para acessar os resultados pelo navegador, digite o endereço URL “http://localhost/” no diretório de instalação do Yii, por exemplo, “http://localhost/yii-advanced”.