尽管我找不到解决方案,但这似乎是一件容易的事。我最近开始了一个需要托管在 Azure 上的 Laravel 4 项目。进行更改时,我已将 Azure 链接到从 bitbucket 进行部署。但是,这会将文件推送到 Azure 中的“wwwroot”文件夹(公用文件夹)。一些框架文件不应该在公用文件夹中,因此我想推送到父文件夹“站点”。
经过一番研究,我发现您可以使用 .deployment 文件来配置部署选项(https://github.com/projectkudu/kudu/wiki/Deployment-hooks)
所以我尝试了 .deployment 文件:
[config]
DEPLOYMENT_TARGET = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\site
不幸的是,这会导致错误:
源目录和目标目录不能是彼此的子目录
这是因为存储库文件夹也位于站点文件夹中。如果我将部署文件更改为:
[config]
DEPLOYMENT_SOURCE = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\repo
DEPLOYMENT_TARGET = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\site
它运行没有错误,但由于 repo 文件夹为空,它什么也不推送,我想如果我能让 Azure 将文件放入 \repo 而不是 \site\repository 一切都会好起来的。
也许我把事情复杂化了,我真的很感激任何建议。最坏的情况,我可以只推到“wwwroot”文件夹并使用 web.config 来修复问题。