我的CakePHP v3.x应用程序在我的本地Vagrant环境中运行正常,但是当我部署到Heroku时,我收到了位于 /webroot/vendor/...
的所有javascript文件的403错误
加载该目录之外的CSS和javascript文件 .
https://example.com/js/i_load_fine.js
https://example.com/vendor/i_cause_403_error.js
/ Procfile
web: vendor/bin/heroku-php-apache2
This question听起来很相似,但我查了一下.htaccess已经有了推荐的RewriteCond:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
3 回答
是的,如果你将使用"vendor"文件夹名称,可能会出错403错误 . 因为root目录web服务器
vendor/bin/
. 不要使用公共名称"vendor"和"bin" .事实证明我必须将文档根指定为Procfile中的第二个参数:
web: vendor/bin/heroku-php-apache2 webroot/
为了它的 Value ,我刚刚看到了同样的问题(有一个“供应商”文件夹,一直有403错误) .
我将vendor文件夹重命名为“v”(和固定引用),一切正常 .
我想知道“供应商”是否是Heroku中的保留字?