It is important to take all things into consideration when asking for leave to make it as easy as possible for your boss to say "Yes".
Make sure to ask long in advance, this gives him a chance to plan around that and organize a temporary replacement.
Try not to ask for holiday right in the middle of an important / busy period. Asking for time off during the delivery of an important project is just asking to be denied.
If your company uses official holiday request forms be sure to use it. This makes sure there is a paper trail of you asking for the holiday and makes it easier for the boss to remember / store it for future use.
Where possible, make sure someone else knows what you're doing and how to do it, so if something pops up while you are away there is someone to deal with it. This may require a talk with your boss to organize.
Be firm. If you show you are always going to back down and not take holidays whenever they request they will do it more and more often
Be lenient. Weigh up the pros and cons, if you are just taking holiday off to sit at home and are only taking it for the sake of taking it then perhaps that is ok to you to cancel and come in and work if requested. Or perhaps its too important to cancel and you decide its more important to take it, e.g wedding. Being lenient can help because it shows your boss you are a team player. Just don't do it too frequently, its about balance.
Probably most importantly is that if this behavior persists then speak to your boss / HR and get the issue resolved. After all holiday is part of the compensation package, if your boss decided one day to pay you less you wouldn't stand for it.
The holiday is yours and you are entitled to it after all, just be polite about it.
If he is making faces and saying no all the time one thing you can do is say
If i can't take it on this date when are suitable dates that i can take it?
This puts the ball in his court, it gives him the chance to make a decision and he is not allowed to answer never, as it is against your contract (and in most places, the law) to give 0 holidays.
Of course, only say the above for those times when you don't mind when holiday is. For the times when you do mind, try to adhere to the points above.
If he consistently refuses you holiday for the times specified politely ask why. If he doesn't have a good reason and is saying no just to be mean, take it up with HR.