Usando o módulo Rules , você pode implementar uma regra semelhante a esta:
{ "rules_check_url" : {
"LABEL" : "Disallow node/* access",
"PLUGIN" : "reaction rule",
"OWNER" : "rules",
"REQUIRES" : [ "rules" ],
"ON" : { "init" : [] },
"IF" : [
{ "text_matches" : {
"text" : [ "site:current-page:url" ],
"match" : "node\/\\d+$",
"operation" : "regex"
}
}
],
"DO" : [
{ "drupal_message" : {
"message" : "Sorry, direct access to URLs like [site:current-page:url] is not allowed around here ...",
"type" : "error"
}
},
{ "redirect" : { "url" : "no_access" } }
]
}
}
A regra acima (ainda) não leva em consideração a aplicação da "ação" apenas às funções selecionadas (por exemplo, para que os administradores ainda possam usar esses caminhos para visualizar um nó). Mas para alguém um pouco familiarizado com o módulo Regras, essa é uma "Condição" direta a ser adicionada ...
Para experimentar essa regra em seu próprio site, basta copiar todo o código de Regras acima e colá-lo em uma nova regra em seu próprio site, criada através da função "Importar". Depois edite / refine para ajustá-lo ao seu próprio ambiente (por exemplo, a mensagem "Desculpe, ..." será exibida).