Actually, this is a subject near and dear to me...
I've found migraines are triggered by histamines (allergic reactions), for me anyway, but mostly with preservatives or caffeine or sugars, such as sulfites, alcohol (wood grain is the worst), and certain processed sugars (including corn syrup). If I let my glucose levels drop or rise suddenly (like not eat when I should, or eat candy when my stomach is empty but I'm not active), my chance for a headache is higher. In the past I've used Benadryl as a standby if I don't have anything else around, but its almost overkill for me with its side effects (it makes me tired but wires me out, if that makes sense). I know that there's children's dosages of Benadryl and there's also the Benadryl cream as well, if someone wants to try this as a migraine cure.
As an interesting sidenote... while in Italy, I had NOT ONE MIGRAINE nor any of my normal problems with dairy intolerance. My Italian friends told me that's actually a normal comment from visiting Americans, and they said its due to their macrobiotic way of life. Nothing we ate there was preserved, the dairy was local and fresh (the cows don't recieve hormone treatments and the milk isn't pasteurized, and their cows eat the local grains), and the wines are local and therefore, no sulfites added (and no hangovers). They do drink caffeine and eat chocolate but everything is in moderation, and you walk everywhere. My Italian friends are convinced that Americans are being pickled to death, and when I returned home and started eating only local produce and preparing my own food, I'm telling you, my migraine levels dropped dramatically.