Recursively change permission of files or directories only (*nix)

The issue arises because we may not need the same permission for the files as like the directories. Take a website as example. Generally website files have 644 permission and directories have 755 permission.