The information from my answer comes from personal experience and the Halo wiki.
Crawlers, as you mentioned, will easily die with a single headshot and that is definitely the best strategy when possible. If you don't have a weapon effective at delivering headshots then a rapid firing weapon or shotgun is a good alternative since they are pretty resistant to damage.
They don't have any specific weak points however, due to their general location in battle (at distance and supported by the rest of the prometheans), it is best to use a precision weapon against them in order to take away the support the other units are receiving while staying far enough away so as not to get horribly shot up.
First off, kill any watchers around them if possible due to their support abilities. As you noticed, these big fellows do not seem to care where they are getting shot at, but this is only partially true. The reason headshots do not seem to be effect is because of the big metal plates they have in front of their face. Their face will always be protected until you manage to take their shields down. Once their shields are down the metal will expose their glowing face and a single precision shot should kill it.
Alternatively the shotguns and gravity hammer are really good weapons against them, needing only a few shots (or 1-2 swings) no matter the difficulty.
Soldiers have good melee resistance but, aside from that, any weapon will be decent at taking them down. Similarly to knights, taking down their shields will expose the glowey stuff underneath which will provide critical damage.
Note: As with every enemy in Halo (except the flood) a good smack on the back is always a good way to immediately kill anything (except the watcher) on this list.