@@ -3988,29 +3988,36 @@ <h2>Platform-as-a-service resources</h2>
39883988</ li >
39893989</ ul >
39903990< h2 > Platform-as-a-service learning checklist</ h2 >
3991- < p > < i class ="fa fa-check-square-o "> </ i >
3992- Review the potential Python platform-as-a-service options above and on their
3993- websites.</ p >
3994- < p > < i class ="fa fa-check-square-o "> </ i >
3995- Sign up for a PaaS account at the provider that appears to best fit your
3996- application needs. Heroku is the PaaS option recommended for starters due to
3997- their detailed documentation and walkthroughs available on the web. However,
3998- the other options are perfectly viable since their purpose is to make deploying
3999- applications as easy as possible.</ p >
4000- < p > < i class ="fa fa-check-square-o "> </ i >
4001- Check if there are any PaaS-specific configuration files needed for your app
4002- to run properly on the PaaS after it is deployed.</ p >
4003- < p > < i class ="fa fa-check-square-o "> </ i >
4004- Deploy your app to the PaaS. </ p >
4005- < p > < i class ="fa fa-check-square-o "> </ i >
4006- Sync your application's configuration with the database.</ p >
4007- < p > < i class ="fa fa-check-square-o "> </ i >
4008- Set up a content delivery network for your application's
4009- < a href ="/static-content.html "> static content</ a > unless your PaaS provider already
4010- handles this deployment step for you.</ p >
4011- < p > < i class ="fa fa-check-square-o "> </ i >
4012- Check if the application's functionality is working and tweak as necessary.</ p >
4013- < h3 > Do you want to use a PaaS or deploy to a traditional server?</ h3 >
3991+ < ol >
3992+ < li >
3993+ < p > Review the potential Python platform-as-a-service options listed above.</ p >
3994+ </ li >
3995+ < li >
3996+ < p > Sign up for a PaaS account at the provider that appears to best fit your
3997+ application needs. Heroku is the PaaS option recommended for starters due
3998+ to their detailed documentation and walkthroughs available on the web.
3999+ However, the other options are also viable since their purpose is to make
4000+ deploying applications as easy as possible.</ p >
4001+ </ li >
4002+ < li >
4003+ < p > Check if there are any PaaS-specific configuration files needed for your
4004+ app to run properly on the PaaS after it is deployed.</ p >
4005+ </ li >
4006+ < li >
4007+ < p > Deploy your app to the PaaS. </ p >
4008+ </ li >
4009+ < li >
4010+ < p > Sync your application's configuration with the database.</ p >
4011+ </ li >
4012+ < li >
4013+ < p > Set up a content delivery network for your application's
4014+ < a href ="/static-content.html "> static content</ a > unless your PaaS provider already
4015+ handles this deployment step for you.</ p >
4016+ </ li >
4017+ < li >
4018+ < p > Check if the application's functionality is working and tweak as necessary.</ p >
4019+ </ li >
4020+ </ ol >
40144021 < h1 > Operating Systems</ h1 >
40154022< p > An operating system runs on the server or virtual server and controls access
40164023to computing resources. The operating system also includes a way to install
@@ -4021,7 +4028,7 @@ <h2>Why are operating systems necessary?</h2>
40214028communicating over a network and running multiple programs at once.
40224029Otherwise you'd need to control the CPU, memory, network, graphics card,
40234030and many other components with your own low-level implementation.</ p >
4024- < p > Without using an existing operating system like Linux, Mac OS X, or Windows,
4031+ < p > Without using an existing operating system like Linux, Mac OS X or Windows,
40254032you'd be forced to write a new operating system as part of your web
40264033application. It would be impossible to write features for your Python
40274034web application because you'd be too busy hunting down a memory leak in
@@ -4077,7 +4084,7 @@ <h3>Red Hat and CentOS</h3>
40774084Yellowdog Updater, Modified (YUM). RPM has a specific .rpm file format
40784085to handle the packaging and installation of libraries and applications. YUM
40794086provides a command-line interface for interacting with the RPM system.</ p >
4080- < h2 > Operating System Resources </ h2 >
4087+ < h2 > Operating system resources </ h2 >
40814088< ul >
40824089< li >
40834090< p > < a href ="http://www.linux.org/threads/selecting-a-linux-distribution.4087/ "> What is a Linux distribution and how do I choose the right one?</ a > </ p >
@@ -4112,24 +4119,31 @@ <h2>Operating System Resources</h2>
41124119 low level booting process.</ p >
41134120</ li >
41144121</ ul >
4115- < h2 > Operating systems learning checklist</ h2 >
4116- < p > < i class ="fa fa-check-square-o "> </ i >
4117- Choose either a Debian-based Linux distribution such as Ubuntu or a
4118- Fedora-based distribution like CentOS.</ p >
4119- < p > < i class ="fa fa-check-square-o "> </ i >
4120- Harden the security through a few basic steps. Install basic security
4121- packages such as < a href ="http://www.fail2ban.org/wiki/index.php/Main_Page "> fail2ban</ a >
4122- or its equivalent. Create a new user account with sudo privileges and disable
4123- root logins. Disable password-only logins and use a public-private keypair
4124- instead. Read more about hardening systems in the resources listed below.</ p >
4125- < p > < i class ="fa fa-check-square-o "> </ i >
4126- Install Python-specific packages to prepare the environment for running a
4127- Python application. Which packages you'll need to install depends on the
4128- distribution you've selected.</ p >
4129- < p > < i class ="fa fa-check-square-o "> </ i >
4130- Read up on < a href ="/web-servers.html "> web servers</ a > as installing one will be the
4131- next step in the deployment process.</ p >
4132- < h3 > What topic do you need to learn to keep going?</ h3 >
4122+ < h2 > Operating system learning checklist</ h2 >
4123+ < ol >
4124+ < li >
4125+ < p > Choose either a Debian-based Linux distribution such as Ubuntu or a
4126+ Fedora-based distribution like CentOS.</ p >
4127+ </ li >
4128+ < li >
4129+ < p > Harden the security through a few basic steps. Install basic security
4130+ packages such as
4131+ < a href ="http://www.fail2ban.org/wiki/index.php/Main_Page "> fail2ban</ a > and
4132+ < a href ="https://help.ubuntu.com/community/AutomaticSecurityUpdates "> unattended-upgrades</ a > .
4133+ Create a new user account with sudo privileges and disable
4134+ root logins. Disable password-only logins and use a public-private keypair
4135+ instead. Read more about hardening systems in the resources listed below.</ p >
4136+ </ li >
4137+ < li >
4138+ < p > Install Python-specific packages to prepare the environment for running a
4139+ Python application. Which packages you'll need to install depends on the
4140+ distribution you've selected.</ p >
4141+ </ li >
4142+ < li >
4143+ < p > Read up on < a href ="/web-servers.html "> web servers</ a > as installing one will be the
4144+ next step in the deployment process.</ p >
4145+ </ li >
4146+ </ ol >
41334147 < h1 > Web servers</ h1 >
41344148< p > Web servers respond to
41354149< a href ="http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol "> Hypertext Transfer Protocol</ a > (HTTP)
0 commit comments