我们最近升级到Drupal9.3.0和composer布局。每次执行composer update时,robots.txt的内容都会被覆盖到位于core/assets/scaffold/files/robots.txt中的文件中。我们希望用项目唯一的数据来附加默认的robots.txt。
我在composer.json中包括了我找到的文档中的以下内容:
"extra": {
"drupal-scaffold": {
"locations": {
"web-root": "web/"
},
"file-mapping": {
"[web-root]/robots.txt": {
"append": "assets/robots.txt.append"
}
}
},我不太愿意创建文件core/assets/scaffold/files/robots.txt.append,因为我们已经接受了一段时间的培训,不更改/添加core/目录中的任何文件。robots.txt.append应该放在哪里才能使它工作呢?
发布于 2022-01-15 19:40:31
路径相对于您的项目根( composer.json所在的地方),因此在您的示例中在根中创建一个名为/assets的文件夹,即/web的同级。
如果你的问题更多的是你是否应该把它放在一条特定的道路上,那么答案是:不是特别的。这个文件本身并不是web应用程序的一部分,所以常识可能会说不要把它放在/web中,但这真的取决于你。
只要确保它放在不会在编写器更新期间被覆盖的地方,并且它包含在您的git提交(所以不是站点/默认/文件等)中,你就会没事的。
https://drupal.stackexchange.com/questions/309198
复制相似问题