我对子目录中的laravel混合资产有麻烦。我创建了
这样的子目录
http://sub.project.com/{project-name}
我设法通过将server.php
文件更改为目录根目录中的index.php
来工作。然后,我添加了这个.htaccess
文件。
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteCond %{REQUEST_URI} !(\.css|\.js|\.png|\.jpg|\.gif|robots\.txt)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(css|js|images)/(.*)$ public/$1/$2 [L,NC]
RewriteRule ^.env - [F,L,NC]
</IfModule>
一切正常,直到需要加载诸如“字体”或“图像”之类的已编译资产为止。生成了诸如image.jpg?uniqueflag38579385
之类的标志。无法使用此.htaccess
配置加载此文件,并且出现404错误。我刚刚开始使用'asset()'函数而不是'mix()',因为使用'mix()'函数,该资产将不会加载。
请帮我解决这个.htaccess
。我真的不知道。
Laravel版本为5.6