我试图使一个节点具有别名"/libraries“,但是我得到了一个,它看起来在Drupal完全引导之前返回(我没有得到通常的Drupal 404)。
我检查了其他几个网站,他们似乎也有同样的问题。我为什么不能在Drupal中使用这个别名呢?它是否与项目根中的“库”文件夹有关?
编辑:这似乎是因为我在docroot中有一个“库”目录,其中包含各种用于CKEditor的JS库和其他需要它们的模块。
那么这里的解决办法是什么?如果我将目录更改为其他任何内容,那么这些插件路径就会中断。我可以添加库API,但我不知道该模块的状态,但这仍然意味着任何具有查找libraries.yml文件的/libraries..../file.js文件的模块仍然不能工作。
在这种实际情况下,/libraries是一个视图(或者最终可能是一个带有视图块的节点),它列出了系统中的所有库,这就是我想要的URL。
发布于 2018-01-30 14:19:46
对于任何展望未来的人来说,这将解决这个问题。
将此添加到htaccess文件中:
# Allow the alias "/libraries" to work without breaking actual assets in the libraries directory.
RewriteRule ^libraries$ /index.php [L]就在这个街区之前:
# Pass all requests not referring directly to files in the filesystem to
# index.php.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^ index.php [L]我还必须向库目录中添加一个.htaccess文件。在这里面,我不得不做:
DirectoryIndex ../index.php
DirectorySlash off现在,我可以为/libraries创建一个别名,而不是引入无休止的重定向循环,物理资产(CKEditor插件)仍然可以从这个目录正确地加载。
https://drupal.stackexchange.com/questions/254695
复制相似问题