Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
drupal如何将url别名添加到;站点/所有/模块/…”;_Drupal - Fatal编程技术网

drupal如何将url别名添加到;站点/所有/模块/…”;

drupal如何将url别名添加到;站点/所有/模块/…”;,drupal,Drupal,别名: 管理员/a/b 资料来源: 站点/all/modules/somemodule/somefile 我在菜单中尝试了pathauto,他们都报告这样的源路径不存在或者我没有权限。如何以最简单的方式实现这一点?Url alias不处理文件,只处理Drupal已知的路径(在代码/数据库中定义) 更新: 路径别名的工作原理是将url重写为Drupal能够理解的内容。因此,如果要为文件创建别名,则需要自己提供文件,因为Drupal不提供文件。 如果你真的想,你可以从重定向到文件,但这并不完美。尝试

别名: 管理员/a/b

资料来源: 站点/all/modules/somemodule/somefile


我在菜单中尝试了pathauto,他们都报告这样的源路径不存在或者我没有权限。如何以最简单的方式实现这一点?

Url alias不处理文件,只处理Drupal已知的路径(在代码/数据库中定义)

更新:
路径别名的工作原理是将url重写为Drupal能够理解的内容。因此,如果要为文件创建别名,则需要自己提供文件,因为Drupal不提供文件。

如果你真的想,你可以从重定向到文件,但这并不完美。

尝试在admin/settings/filesystem下将下载方法设置为private。如果您这样做,Drupal将为您的文件提供服务,重定向可能会工作(我自己没有测试它…:-)

当然,这在性能方面是有代价的。你的链接看起来会不一样


如果您想保留公共下载方法,则需要在HTTP服务器级别重定向,因为在这种情况下,文件请求不会通过Drupal进行。

谢谢!所以我可以将站点/all/modules/somemodule/somefile的路径添加到菜单中吗?还是用密码?或者不能这样做?尽管可以通过添加外部链接来完成。但如果我不想在那里使用绝对基url呢。猜测可能应该在代码中完成,然后我在菜单挂钩中完成了这项工作(给定链接或使用回调并调用drupal_goto)。额外的工作,但确定如果已经有自定义模块。。。