<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Webhosting &#8211; Rene Windegger</title>
	<atom:link href="https://www.windegger.wtf/category/webhosting/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.windegger.wtf</link>
	<description>Welcome to Freedom</description>
	<lastBuildDate>Mon, 10 Oct 2016 09:08:47 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.7.11</generator>
	<item>
		<title>Multilingual Blog Support</title>
		<link>https://www.windegger.wtf/2016/10/multilingual-blog-support/?pk_campaign=feed&#038;pk_kwd=multilingual-blog-support</link>
					<comments>https://www.windegger.wtf/2016/10/multilingual-blog-support/?pk_campaign=feed&#038;pk_kwd=multilingual-blog-support#respond</comments>
		
		<dc:creator><![CDATA[rene]]></dc:creator>
		<pubDate>Tue, 11 Oct 2016 06:30:48 +0000</pubDate>
				<category><![CDATA[Webhosting]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.windegger.wtf/?p=2474</guid>

					<description><![CDATA[<p>I&#8217;m happy to say, that I finally was able to find the time and setup multilingual support for my site. How was it accomplished? Since this site runs on WordPress setting up a multilingual site requires some work. I&#8217;ve took a look on multiple solutions, but found WPML is the way to</p>
<p>The post <a rel="nofollow" href="https://www.windegger.wtf/2016/10/multilingual-blog-support/?pk_campaign=feed&#038;pk_kwd=multilingual-blog-support">Multilingual Blog Support</a> appeared first on <a rel="nofollow" href="https://www.windegger.wtf">Rene Windegger</a>.</p>
<img src="https://analytics.windegger.wtf/piwik.php?idsite=3&amp;rec=1&amp;url=https%3A%2F%2Fwww.windegger.wtf%2F2016%2F10%2Fmultilingual-blog-support%2F%3Fpk_campaign%3Dfeed%26pk_kwd%3Dmultilingual-blog-support&amp;action_name=Multilingual+Blog+Support&amp;urlref=https%3A%2F%2Fwww.windegger.wtf%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></description>
										<content:encoded><![CDATA[<p><img src="" style="float:right;" align="right" />I&#8217;m happy to say, that I finally was able to find the time and setup multilingual support for my site.</p>
<h2>How was it accomplished?</h2>
<p>Since this site runs on WordPress setting up a multilingual site requires some work. I&#8217;ve took a look on multiple solutions, but found <a href="https://wpml.org/?aid=160597&amp;affiliate_key=WJZVI24d5KZS">WPML</a> is the way to go.</p>
<p>WPML is a great WordPress Plugin that allows almost everything on your WordPress blog to be translated. Many premium Themes and Plugins support WPML out of the box.</p>
<p>The Process of setting up WPML was straight forward, the UI offers a great way to create your page or post translations. Depending on your theme, the integration to the front-end is easy.</p>
<p>So when you need help, to set up your WordPress installation, to support multiple languages, feel free to contact me I&#8217;m happy to help you.<img src="https://analytics.windegger.wtf/piwik.php?idsite=3&amp;rec=1&amp;url=https%3A%2F%2Fwww.windegger.wtf%2F2016%2F10%2Fmultilingual-blog-support%2F%3Fpk_campaign%3Dfeed%26pk_kwd%3Dmultilingual-blog-support&amp;action_name=Multilingual+Blog+Support&amp;urlref=https%3A%2F%2Fwww.windegger.wtf%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" /></p>
<p>The post <a rel="nofollow" href="https://www.windegger.wtf/2016/10/multilingual-blog-support/?pk_campaign=feed&#038;pk_kwd=multilingual-blog-support">Multilingual Blog Support</a> appeared first on <a rel="nofollow" href="https://www.windegger.wtf">Rene Windegger</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.windegger.wtf/2016/10/multilingual-blog-support/?pk_campaign=feed&#038;pk_kwd=multilingual-blog-support/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress running on PHP 7 made easy</title>
		<link>https://www.windegger.wtf/2016/10/run-wordpress-php7/?pk_campaign=feed&#038;pk_kwd=run-wordpress-php7</link>
					<comments>https://www.windegger.wtf/2016/10/run-wordpress-php7/?pk_campaign=feed&#038;pk_kwd=run-wordpress-php7#comments</comments>
		
		<dc:creator><![CDATA[rene]]></dc:creator>
		<pubDate>Mon, 03 Oct 2016 08:30:47 +0000</pubDate>
				<category><![CDATA[Webhosting]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[mariadb]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[php7]]></category>
		<category><![CDATA[varnish]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.windegger.wtf/?p=2362</guid>

					<description><![CDATA[<p>During the process of setting up this site, I came to the conclusion that all the available hosting solutions don&#8217;t fit my needs. Setting up WordPress and getting it right the first time, is out of reach for many among us. So what do you do? Looking for Solutions! Over</p>
<p>The post <a rel="nofollow" href="https://www.windegger.wtf/2016/10/run-wordpress-php7/?pk_campaign=feed&#038;pk_kwd=run-wordpress-php7">WordPress running on PHP 7 made easy</a> appeared first on <a rel="nofollow" href="https://www.windegger.wtf">Rene Windegger</a>.</p>
<img src="https://analytics.windegger.wtf/piwik.php?idsite=3&amp;rec=1&amp;url=https%3A%2F%2Fwww.windegger.wtf%2F2016%2F10%2Frun-wordpress-php7%2F%3Fpk_campaign%3Dfeed%26pk_kwd%3Drun-wordpress-php7&amp;action_name=WordPress+running+on+PHP+7+made+easy&amp;urlref=https%3A%2F%2Fwww.windegger.wtf%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" />]]></description>
										<content:encoded><![CDATA[<p><img src="" style="float:right;" align="right" />During the process of setting up this site, I came to the conclusion that all the available hosting solutions don&#8217;t fit my needs. Setting up WordPress and getting it right the first time, is out of reach for many among us. So what do you do?<span id="more-2362"></span></p>
<h2>Looking for Solutions!</h2>
<p>Over the years I was hosting multiple sites with different demands in traffic and size. During that process I came to the conclusion that the setup, of each of those sites, was a pain and maintenance more or less impossible. Since I came in contact with hosting the first time, I&#8217;ve moved from apache1 to apache2 to IIS to <a href="http://nginx.org/" rel="nofollow">nginx</a> as web daemon. The php execution engine has been updated since then <a href="https://en.wikipedia.org/wiki/PHP" rel="nofollow">multiple times</a>.</p>
<p>Every time a component needed an upgrade you faced almost a new setup. The process of backup and restore was always tricky and using your own scripts to setup new vhosts where required. After some research I&#8217;ve discovered <a href="http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/">Automated Nginx Reverse Proxy for Docker</a> by Jason Wilder and that led to some research and to the setup you can find in this post.</p>
<h3>What else do we have to consider?</h3>
<p>The preferred solution needs to be scale-able and distribute-able. Eventually a new player appeared on the software market that allows exactly to solve this.</p>
<p>Lets say hello to docker! Whale, whale!</p>
<h2>What is docker?</h2>
<p>Docker is an application container system and allows to prepare and configure applications for different environments. To cover docker is a complete different topic and will not be part of this post. But to get you started, just follow one of the <a href="https://docs.docker.com/engine/installation/" rel="nofollow">guides at the docker site</a>. When you want to scale and distribute have a look at docker swarm.</p>
<h3>Get docker-compose ready!</h3>
<p>docker-compose is required to start the different containers and setup networks in automated ways. So <a href="https://docs.docker.com/compose/install/" rel="nofollow">install docker-compose according to this guide</a> and read on when you&#8217;re ready.</p>
<h2>What are we going to do now?</h2>
<p>Lets think about our infrastructure for a moment. To host our website in a scale able way we need to have multiple components up and running. For now, we settle with one nginx front end server to be easily able to create new vhosts. We employ one <a href="https://www.varnish-cache.org/" rel="nofollow">Varnish</a> daemon in front of 2 nginx back end servers. Since nginx is only able to serve static content, we need to add a way to integrate PHP into our setup. To get us started we set up two fpm hosts. Since setting up a SQL cluster is out of scope for the moment, we use a single <a href="https://mariadb.org/" rel="nofollow">MariaDB</a> host. Memcached1 is a memcached instance that can be utilized by the WordPress installation.</p>
<figure id="attachment_2390" aria-describedby="caption-attachment-2390" style="width: 300px" class="wp-caption aligncenter"><a href="https://www.windegger.wtf/wp-content/uploads/2016/10/TargetArchitecture.png"><img loading="lazy" class="wp-image-2390 size-medium" src="https://www.windegger.wtf/wp-content/uploads/2016/10/TargetArchitecture-300x84.png" alt="WordPress target architecture" width="300" height="84" srcset="https://www.windegger.wtf/wp-content/uploads/2016/10/TargetArchitecture-300x84.png 300w, https://www.windegger.wtf/wp-content/uploads/2016/10/TargetArchitecture-200x56.png 200w, https://www.windegger.wtf/wp-content/uploads/2016/10/TargetArchitecture.png 553w" sizes="(max-width: 300px) 100vw, 300px" /></a><figcaption id="caption-attachment-2390" class="wp-caption-text">Network diagram of the target architecture for the WordPress hosting scenario.</figcaption></figure>
<p>Now that we have our target architecture ready, we can think about how to handle the setup and how we&#8217;re still able to scale the instance out.</p>
<h3>Let&#8217;s create a compose file!</h3>
<p>To make it easy to run our site and start the whole environment with ease, we make use of docker-compose. Take a look at the source code of our docker-compose file. We have a closer look at the different things in a bit.</p>
<p>View the code on <a href="https://gist.github.com/rwindegger/e7857d1eba6c6925a3e9ac9dfc5627ae">Gist</a>.</p>
<p>As you can see, we create multiple nodes of different types. For more details on the different images look at my <a href="https://hub.docker.com/u/rwindegger/">docker-hub</a> profile. The nodes map their required volumes, for example the root volume for our site is mapped to &#8220;./.data/test.windegger.wtf/storage&#8221;. Depending on your docker setup you might need to adjust some volumes, drivers or networks.</p>
<h2>The WordPress container!</h2>
<p>The WordPress container is the heart of the installation, it is based on the official WordPress Dockerfile, but modified to use PHP 7. Since it&#8217;s using PHP 7 as base, it required some minor adjustments to the original file. For more information about the container take a look at the <a href="https://hub.docker.com/r/rwindegger/wordpress/">Hubpage</a>.</p>
<p>After you start the composed environment using &#8220;docker-compose up&#8221;, you have your new and fresh WordPress installation up and running.</p>
<h2>What comes next?</h2>
<p>I continue to do research on different topics and cover my findings in my blog. I cover the different topics I&#8217;m faced with in my daily life. Prepare for some devops and other development updates.</p>
<p>You&#8217;re still reading, so you&#8217;ve not found what you came for. You need a trusted professional to handle your site in a managed manner? Don&#8217;t hesitate, use the contact form or leave a comment. You will receive a reply shortly.<img src="https://analytics.windegger.wtf/piwik.php?idsite=3&amp;rec=1&amp;url=https%3A%2F%2Fwww.windegger.wtf%2F2016%2F10%2Frun-wordpress-php7%2F%3Fpk_campaign%3Dfeed%26pk_kwd%3Drun-wordpress-php7&amp;action_name=WordPress+running+on+PHP+7+made+easy&amp;urlref=https%3A%2F%2Fwww.windegger.wtf%2Ffeed%2F" style="border:0;width:0;height:0" width="0" height="0" alt="" /></p>
<p>The post <a rel="nofollow" href="https://www.windegger.wtf/2016/10/run-wordpress-php7/?pk_campaign=feed&#038;pk_kwd=run-wordpress-php7">WordPress running on PHP 7 made easy</a> appeared first on <a rel="nofollow" href="https://www.windegger.wtf">Rene Windegger</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.windegger.wtf/2016/10/run-wordpress-php7/?pk_campaign=feed&#038;pk_kwd=run-wordpress-php7/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>
