Headaches can be caused by a variety of factors, and they're generally classified into two main categories: primary headaches and secondary headaches.