<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:og="http://ogp.me/ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:schema="http://schema.org/" xmlns:sioc="http://rdfs.org/sioc/ns#" xmlns:sioct="http://rdfs.org/sioc/types#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" version="2.0" xml:base="https://www.linuxjournal.com/tag/web-servers">
  <channel>
    <title>Web Servers</title>
    <link>https://www.linuxjournal.com/tag/web-servers</link>
    <description/>
    <language>en</language>
    
    <item>
  <title>Apache Web Servers and SSL Encryption</title>
  <link>https://www.linuxjournal.com/content/apache-web-servers-and-ssl-encryption</link>
  <description>  &lt;div data-history-node-id="1338713" class="layout layout--onecol"&gt;
    &lt;div class="layout__region layout__region--content"&gt;
      
            &lt;div class="field field--name-field-node-image field--type-image field--label-hidden field--item"&gt;  &lt;img src="https://www.linuxjournal.com/sites/default/files/nodeimage/story/GeekGuide-GeoTrust-ApacheSSL_cover-200.jpg" width="200" height="258" alt="Apache Web Servers and SSL Encryption" title="Apache Web Servers and SSL Encryption" typeof="foaf:Image" class="img-responsive" /&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-author field--type-ds field--label-hidden field--item"&gt;by &lt;a title="View user profile." href="https://www.linuxjournal.com/users/carlie-fairchild" lang="" about="https://www.linuxjournal.com/users/carlie-fairchild" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;Carlie Fairchild&lt;/a&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"&gt;Congratulations! You’ve decided to set up a Web site. The site might be for your personal use, for sharing family pictures, for a blog, for an SaaS application, or any number of other possibilities. In all of those cases, people will access your site using the Hypertext Transfer Protocol (HTTP). HTTP has evolved and improved through the years, but one thing about it hasn’t changed—the fact that all of the traffic sent ￼on an HTTP connection is unencrypted.
&lt;p&gt;
The bottom line is that whether you want or need to do so, adding HTTPS to a site you’re running isn’t very hard to do. In this Geek Guide, I walk through what SSL/TLS is (and isn’t), how you can create or buy a certificate, how to install that certificate into an Apache server and then how to configure Apache such that a subset of URLs on your system are covered by SSL.
&lt;/p&gt;&lt;p&gt;
&lt;a href="http://www.linuxjournal.com/geekguide-apache-ssl"&gt;Register to download&lt;/a&gt; our 25 page latest GeekGuide, &lt;a href="http://www.linuxjournal.com/geekguide-apache-ssl"&gt;Apache Web Servers and SSL Encryption&lt;/a&gt; by Reuven M. Lerner.&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-link field--type-ds field--label-hidden field--item"&gt;  &lt;a href="https://www.linuxjournal.com/content/apache-web-servers-and-ssl-encryption" hreflang="und"&gt;Go to Full Article&lt;/a&gt;
&lt;/div&gt;
      
    &lt;/div&gt;
  &lt;/div&gt;

</description>
  <pubDate>Tue, 12 May 2015 14:47:58 +0000</pubDate>
    <dc:creator>Carlie Fairchild</dc:creator>
    <guid isPermaLink="false">1338713 at https://www.linuxjournal.com</guid>
    </item>
<item>
  <title>Two Pi R 2: Web Servers</title>
  <link>https://www.linuxjournal.com/content/two-pi-r-2-web-servers</link>
  <description>  &lt;div data-history-node-id="1256453" class="layout layout--onecol"&gt;
    &lt;div class="layout__region layout__region--content"&gt;
      
            &lt;div class="field field--name-field-node-image field--type-image field--label-hidden field--item"&gt;  &lt;img src="https://www.linuxjournal.com/sites/default/files/u1002061/Raspi-PGB001-300x267.png" width="300" height="267" alt="" typeof="foaf:Image" class="img-responsive" /&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-author field--type-ds field--label-hidden field--item"&gt;by &lt;a title="View user profile." href="https://www.linuxjournal.com/users/kyle-rankin" lang="" about="https://www.linuxjournal.com/users/kyle-rankin" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;Kyle Rankin&lt;/a&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"&gt;&lt;p&gt;
In my last &lt;a href="http://www.linuxjournal.com/content/two-pi-r"&gt;article&lt;/a&gt;, I talked about how even though an individual Raspberry
Pi is not that redundant, two Pis are. I described how to set up two Raspberry
Pis as a fault-tolerant file server using the GlusterFS clustered
filesystem. Well, now that we have redundant, fault-tolerant storage shared
across two Raspberry Pis, we can use that as a foundation to build other
fault-tolerant services. In this article, I describe how to set up a
simple Web server cluster on top of the Raspberry Pi foundation we already
have.
&lt;/p&gt;

&lt;p&gt;
Just in case you didn't catch the first column, I'll go over the setup from
last month. I have two Raspberry Pis: Pi1 and Pi2. Pi1 has an IP address of
192.168.0.121, and Pi2 has 192.168.0.122. I've set them up as a GlusterFS
cluster, and they are sharing a volume named gv0 between them. I also
mounted this shared volume on both machines at /mnt/gluster1, so they 
each could access the shared storage at the same time. Finally, I performed some
failure testing. I mounted this shared storage on a third machine and
launched a simple script that wrote the date to a file on the shared
storage. Then, I experimented with taking down each Raspberry Pi individually
to confirm the storage stayed up.
&lt;/p&gt;

&lt;p&gt;
Now that I have the storage up and tested, I'd like to set up these Raspberry
Pis as a fault-tolerant Web cluster. Granted, Raspberry Pis don't
have speedy processors or a lot of RAM, but they still have more than
enough resources to act as a Web server for static files. Although the example
I'm going to give is very simplistic, that's intentional—the idea is that
once you have validated that a simple static site can be hosted on
redundant Raspberry Pis, you can expand that with some more sophisticated
content yourself.
&lt;/p&gt;

&lt;h3&gt;
Install Nginx&lt;/h3&gt;

&lt;p&gt;
Although I like Apache just fine, for a limited-resource Web server serving
static files, something like nginx has the right blend of features, speed
and low resource consumption that make it ideal for this site. Nginx is
available in the default Raspbian package repository, so I log in to the
first Raspberry Pi in the cluster and run:

&lt;/p&gt;&lt;pre&gt;&lt;code&gt;
$ sudo apt-get update
$ sudo apt-get install nginx
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;
Once nginx installed, I created a new basic nginx configuration at
/mnt/gluster1/cluster that contains the following config:

&lt;/p&gt;&lt;pre&gt;&lt;code&gt;
server {
  root /mnt/gluster1/www;
  index index.html index.htm;
  server_name twopir twopir.example.com;

  location / {
        try_files $uri $uri/ /index.html;
  }
}
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;
Note: I decided to name the service twopir, but you would change this to
whatever hostname you want to use for the site. Also notice that I set the
document root to /mnt/gluster1/www. This way, I can put all of my static
files onto shared storage so they are available from either host.
&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-node-link field--type-ds field--label-hidden field--item"&gt;  &lt;a href="https://www.linuxjournal.com/content/two-pi-r-2-web-servers" hreflang="und"&gt;Go to Full Article&lt;/a&gt;
&lt;/div&gt;
      
    &lt;/div&gt;
  &lt;/div&gt;

</description>
  <pubDate>Wed, 22 Jan 2014 20:25:37 +0000</pubDate>
    <dc:creator>Kyle Rankin</dc:creator>
    <guid isPermaLink="false">1256453 at https://www.linuxjournal.com</guid>
    </item>

  </channel>
</rss>
