我设法使用.htaccess文件隐藏frontend/web
和backend/web/
。但urlManager无法理解。我正在尝试创建类似site/index
的网址,它应该是这样的:example.com/site/index
但它会创建example.com/frontend/web/site/index
。
如何使用UrlManager
解决此问题?
更新:根目录中的.htaccess。
Options -Indexes
RewriteEngine on
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_URI} !^/backend/web/(assets|css)/
RewriteCond %{REQUEST_URI} admin
RewriteRule .* backend/web/index.php [L]
RewriteCond %{REQUEST_URI} !^/(frontend|backend)/web/(assets|css)/
RewriteCond %{REQUEST_URI} !admin
RewriteRule .* frontend/web/index.php [L]
</IfModule>
这是我在frontend/web
和backend/web
中使用的那个:
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