If you want to put logic to it, think of it this way:
Fighters are small, they have very limited storage space for ammo.
Capships, such as gunboats, are much larger and have expansive cargo bays that the ammo can be stored in - in effect giving them more than enough ammo for any situation they may encounter. That's why the missile turrets have infinite ammo capacity.
EDIT:
And to be fair, missile turrets -may- be overpowered against fighters, but a gunboat equipped with all standard turrets (i.e. guns, not missiles) is nearly incapable of hitting fighters. The fighters dodge far too easily, and for all intents and purposes they're invincible against gunboats who dont have missile turrets.