Turn on an LED with ESP using HTTP requests

Hi,
I would like to turn on an LED (for start) using HTTP request and ESP (nodeMCU to be more precisely).
I built an app that would control the requests, but i have a problem: I have to be connected to the same network that the ESP is connected to.
One way to solve this problem is to make Port Forwarding inside the router, but i don't want this solution.
The other way i thought of was to make the ESP a server and send the request to it, but im not sure that it can happen.
Other solution is to make both esp and androind app clients, and open a free-host (for now) server that will handle the request.

How is that sounds to you? do you have any other better solution? do you know of a free-host that enables HTTP requests?

Thanks in advance

did you evaluate Blynk or similar service?

I would like to make my own app.

what is the problem with port forwarding?
that is the standard way to set up a server on a local area network so that it can be accessed from the internet
just make sure the server host has a static IP address

The problem is that my lecturer dont approve this. he thinks its too easy to make.
anyway, i would like to make an http get request from the esp to a specific website that will check if the LED field has changed. This field can be changed by the android app that will send an http post request and change the field.

anyone has an idea?

for an example of HTTP GET see
http://playground.arduino.cc/Code/WebClient