If photon-photon interactions are impossible, how are higher harmonics generated? In nonlinear optics, it is a rather common process to use nonlinear materials to produce higher harmonics of an incident wave. About the mechanism of the generation of such higher harmonics, it is mentioned in the very first paragraph of a paper that I am reading (available online), that :

Optical nonlinearities are inherently weak, because they are governed by photon–photon interactions enabled by materials.

(Kauranen, Martti, and Anatoly V. Zayats. "Nonlinear plasmonics." Nature Photonics 6, no. 11 (2012): 737-748.)
So, I wonder why is it usually said that photons do not interact, or hardly interact?
I think that in nonlinear optics, the fundamental frequency photon  interacts with matter and the higher frequency photons are generated by the matter, and no direct photon-photon interaction takes place. So my questions reduces to what does the author mean by the above sentence?
 A: 
So, I wonder why is it usually said that photons do not interact, or hardly interact?

As far as we know photons do not directly interact with each other.
Mathematically, this is manifest in the fact that the equations of motion for electromagnetism are linear: given two sources A and B of electromagnetic radiation, the resulting EM field is precisely the same as if you take the field which would arise from source A alone, the field from source B alone, and just sum them together.
In other words
$$\text{Field from}(A+B) = \text{Field from}(A) + \text{Field from}(B) \, .$$
Yet another way to say this is that if a photon is moving along, the existence of a second photon has absolutely no influence over the first photon's path.
Things get more interesting when you have some charged particles involved.
If a photon moves past a charged particle, the electromagnetic field pushes that charged particle around.
The resulting motion of the charged particle creates new electromagnet radiation (a.k.a. new photons).
So, taking the full system into account, photons now actually do interact.
Of course, it's not a direct interaction; the interaction is mediated by the charges.
Still, you can say that when you have charges involved photons do wind up interacting with one another, and their dynamics is no longer linear.
In nonlinear optics people find materials (usually crystals or atoms in a resonant cavity) which interact strongly enough with photons to result in a strong effective photon-photon interaction.
This is pretty hard because light interacts pretty weakly with matter (charged particles) in general.

optical nonlinearities are inherently weak, because they are governed by photon–photon interactions enabled by materials.

This means what you guessed: the effective photon-photon interaction is weak because it's mediated by a weak photon-matter interaction.
In short, your guess is correct!
A: Two photons cannot directly interact because the only solution to their equation of motion which conserves both energy and momentum is their original direction and frequency. The only exception is two photons of identical frequency meeting head on, in which case they could bounce off each other and reverse direction. But this is indistinguishable from the case where they pass through each other.
This is different to collisions of physical objects, and there is a good reason for this. With normal matter, Energy and Momentum can be assigned separately. With photons, you don't have this choice as the energy and the magnitude of momentum are proportional. This leaves us with fewer possible solutions which conserve energy and momentum. In fact only one solution - their original directions and frequencies.
You can get more solutions if you involve ordinary matter, as this gives you more degrees of freedom in your solution. Some of these solutions involve emitting photons of higher frequency than the source photons, and this is used to produce high frequency lasers.
