Browse Source

add heroku/deploy options to quickstart, and add more clear links in tutorial setup.

pull/427/head
Kevin Burke 13 years ago
parent
commit
6b9e6a5a52
  1. 36
      docs/quickstart.rst
  2. 20
      docs/tutorial/setup.rst

36
docs/quickstart.rst

@ -826,3 +826,39 @@ can do it like this::
from werkzeug.contrib.fixers import LighttpdCGIRootFix
app.wsgi_app = LighttpdCGIRootFix(app.wsgi_app)
Share your Local Server with a Friend
-------------------------------------
`Localtunnel <http://progrium.com/localtunnel/>`_ is a neat tool you can use to
quickly share your local Flask server to a friend.
To install Localtunnel, open a terminal and run the following command::
sudo gem install localtunnel
Then, with Flask running at ``http://localhost:5000``, open a new Terminal window
and type::
localtunnel 5000
Port 5000 is now publicly accessible from http://54xy.localtunnel.com ...
*(Get a* ``gem: command not found`` *error? Download RubyGems*
`here <http://rubygems.org/pages/download>`_ *.)*
If you load the URL given in the localtunnel output in your browser, you
should see your Flask app. It's actually being loaded from your own computer!
Deploying to a Web Server
-------------------------
`Heroku <http://www.heroku.com>`_ offers a free web platform to host your
Flask app, and is the easiest way for you to put your Flask app online.
They have excellent instructions on how to deploy your Flask app `here
<http://devcenter.heroku.com/articles/python>`_.
Other resources for deploying Flask apps:
- `Deploying Flask on ep.io <https://www.ep.io/docs/quickstart/flask/>`_
- `Deploying Flask on Webfaction <http://flask.pocoo.org/snippets/65/>`_
- `Deploying Flask on Google App Engine <https://github.com/kamalgill/flask-appengine-template>`_

20
docs/tutorial/setup.rst

@ -11,7 +11,7 @@ into the module which we will be doing here. However a cleaner solution
would be to create a separate `.ini` or `.py` file and load that or import
the values from there.
::
In `flaskr.py`::
# all the imports
import sqlite3
@ -26,7 +26,7 @@ the values from there.
PASSWORD = 'default'
Next we can create our actual application and initialize it with the
config from the same file::
config from the same file, in `flaskr.py`::
# create our little application :)
app = Flask(__name__)
@ -37,21 +37,21 @@ string it will import it) and then look for all uppercase variables
defined there. In our case, the configuration we just wrote a few lines
of code above. You can also move that into a separate file.
It is also a good idea to be able to load a configuration from a
configurable file. This is what :meth:`~flask.Config.from_envvar` can
do::
Usually, it is a good idea to load a configuration from a configurable
file. This is what :meth:`~flask.Config.from_envvar` can do, replacing the
:meth:`~flask.Config.from_object` line above::
app.config.from_envvar('FLASKR_SETTINGS', silent=True)
That way someone can set an environment variable called
:envvar:`FLASKR_SETTINGS` to specify a config file to be loaded which will
then override the default values. The silent switch just tells Flask to
not complain if no such environment key is set.
:envvar:`FLASKR_SETTINGS` to specify a config file to be loaded which will then
override the default values. The silent switch just tells Flask to not complain
if no such environment key is set.
The `secret_key` is needed to keep the client-side sessions secure.
Choose that key wisely and as hard to guess and complex as possible. The
debug flag enables or disables the interactive debugger. Never leave
debug mode activated in a production system because it will allow users to
debug flag enables or disables the interactive debugger. *Never leave
debug mode activated in a production system*, because it will allow users to
execute code on the server!
We also add a method to easily connect to the database specified. That

Loading…
Cancel
Save