Drupal 7 开发内部培训资料, 分头诗人

我想问如何一个防止别人在url地址栏输入node/1,node/2...就看这些页面内容

赞成!
0
否决!

因为我想做一个让各个用户有自己专属的页面,发一个页面的别名路径给别人时候,别人可以看到这个页面的内容,但如何一个防止别人在url地址栏输入node/1,node/2...就看这些页面内容?同时如何让这个别名路径复杂一点,让别人由一个别名路径关联猜到其他页面路径?

1 个回答

赞成!
0
否决!

首先得明确的是,node/1, node/2 等是系统默认的地址,他们通过 hook_menu 生成, hook_menu 能做权限判断,权限可以自己写属于自己的权限,如只有登录后查看,或者是只有某个角色能看等。 能通过hook_menu_alter 修改系统默认的hook_menu 生成的地址。达到不需要修改核心模块就能修改系统地址的访问方式,如修改 node/1, node/2 权限。但至于第二个问题,如何别名复杂,这个有点不知道如何说了,再复杂的地址,也可以让人找到,找到后,就不复杂了,放在网页收藏夹打开就行,所以很难防范,如果你只要复杂的别名,你可以通过 token 模块来帮你做一些比较复杂的别名。