в htaccess RewriteEngine не работает на конкретном каталоге - PullRequest
0 голосов
/ 10 октября 2018

Я использую yii2, и у меня есть проблема в .htaccess, как показано ниже:

Я не могу получить доступ к каталогу js для использования, включая файлы в моем коде.

Пример: yii2/sepadmin/js/jquery.min.js net::ERR_ABORTED 404 (Not Found)

Вот мой .htaccess:

RewriteEngine On

# deal with sepadmin first
RewriteCond %{REQUEST_URI} ^/yii2/(sepadmin)
RewriteRule ^sepadmin/assets/(.*)$ backend/web/assets/$1 [L]

RewriteRule ^sepadmin/css/(.*)$ backend/web/css/$1 [L] #Accessible
RewriteRule ^sepadmin/js/(.*)$ backend/web/js/$1 [L] # Not Accessible

RewriteCond %{REQUEST_URI} !^/yii2/backend/web/(assets|css)/
RewriteCond %{REQUEST_URI} ^/yii2/(sepadmin)
RewriteRule ^.*$ backend/web/index.php [L]

Как я уже говорил, я могу получить доступ к каталогу css, но не могу получить доступ к каталогу js

1 Ответ

0 голосов
/ 10 октября 2018

Я нашел решение, мне пришлось использовать имя каталога в REQUEST_URI, как показано ниже.

RewriteEngine On

# deal with sepadmin first
RewriteCond %{REQUEST_URI} ^/yii2/(sepadmin)
RewriteRule ^sepadmin/assets/(.*)$ backend/web/assets/$1 [L]
RewriteRule ^sepadmin/css/(.*)$ backend/web/css/$1 [L]
RewriteRule ^sepadmin/js/(.*)$ backend/web/js/$1 [L]
RewriteRule ^sepadmin/files/(.*)$ backend/web/files/$1 [L]


RewriteCond %{REQUEST_URI} !^/yii2/backend/web/(assets|css|js|files)/
RewriteCond %{REQUEST_URI} ^/yii2/(sepadmin)
RewriteRule ^.*$ backend/web/index.php [L]
...