<?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>Victor Hung%27s Diary</title>
	<atom:link href="https://taskinghouse.com/posts/tag/amazon/feed/" rel="self" type="application/rss+xml" />
	<link>https://taskinghouse.com</link>
	<description></description>
	<lastBuildDate>Thu, 06 Sep 2018 16:20:26 +0000</lastBuildDate>
	<language>zh-TW</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://taskinghouse.com/wp-content/uploads/2018/05/cropped-favicon.png</url>
	<title>Amazon &#8211; TaskingHouse</title>
	<link>https://taskinghouse.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>「教學」Amazon EC2 Ubuntu  將 PHP 7.0 降版至 PHP 5.6</title>
		<link>https://taskinghouse.com/posts/829904/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Thu, 01 Sep 2016 17:49:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[升級]]></category>
		<category><![CDATA[更新]]></category>
		<category><![CDATA[相容性]]></category>
		<category><![CDATA[降版]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2016-09-02-829904/</guid>

					<description><![CDATA[<p>號稱效能是 PHP 5.6 版兩倍的 PHP 7.0 版，帶來包括記憶體使用減少、抽象化語法樹、全面 64 位元支援、例外處理架構優化等功能，但使用者遇到最大的...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/829904/">「教學」Amazon EC2 Ubuntu  將 PHP 7.0 降版至 PHP 5.6</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p><img decoding="async" src="https://taskinghouse.com/archives/829904/9aIIPId1S56UsfY12MrC_cover.png" alt="cover.png" /></p>
<p>號稱效能是 PHP 5.6 版兩倍的 PHP 7.0 版，帶來包括記憶體使用減少、抽象化語法樹、全面 64 位元支援、例外處理架構優化等功能，但使用者遇到最大的障礙果然還是相容性問題，以往能正常運作的系統程式，可能在升級 PHP 7.0 之後出現錯誤，因此這篇教學就要介紹一個簡單快速將 PHP 7.0 降版至 PHP 5.6 的方式，以快速排除錯誤、解決問題。</p>
<h2>Step 1</h2>
<p>停用 proxy_fcgi apache module：</p>
<pre><code>sudo a2dismod proxy_fcgi proxy; sudo service apache2 restart
</code></pre>
<h2>Step 2</h2>
<p>要從 PHP 7.0 降版到 PHP 5.6 其實並不需要移除 PHP 7.0，只要重新安裝 PHP 5.6 就可以了，相反的在這種情況之下，如果有使用 phpmyadmin 的話反而必須要有 PHP 7.0 的存在。</p>
<p>接著依序輸入下列指令：</p>
<pre><code>sudo add-apt-repository ppa:ondrej/php
</code></pre>
<pre><code>sudo apt-get update
</code></pre>
<pre><code>sudo apt-get install php7.0 php5.6 php5.6-mysql php-gettext php5.6-mbstring php-xdebug libapache2-mod-php5.6 libapache2-mod-php7.0
</code></pre>
<h2>Step 3</h2>
<p>都安裝完成之後，輸入以下指令從 PHP 7.0 降版到 PHP 5.6</p>
<pre><code>sudo a2dismod php7.0 ; sudo a2enmod php5.6 ; sudo service apache2 restart
</code></pre>
<h2>大功告成</h2>
<p><img decoding="async" src="https://taskinghouse.com/archives/829904/PehqThQEShiw9zGXMVyO_cover.png" alt="cover.png" /></p>
<p>如果之後想把 PHP 5.6 升級到 PHP 7.0 反過來輸入就可以了</p>
<pre><code>sudo a2dismod php5.6 ; sudo a2enmod php7.0 ; sudo service apache2 restart
</code></pre>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/829904/">「教學」Amazon EC2 Ubuntu  將 PHP 7.0 降版至 PHP 5.6</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」WordPress 繞過 FTP 自動升級外掛與佈景主題</title>
		<link>https://taskinghouse.com/posts/804951-wordpress-automatic-upgrade-plugin-and-theme-bypass-ftp-connection/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Wed, 24 Aug 2016 19:01:07 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[EC2]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2016-08-25-wordpress-automatic-upgrade-plugin-and-theme-bypass-ftp-connection/</guid>

					<description><![CDATA[<p>在前篇「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站 設定完成之後，初次登入 WordPress 做的第一件事情，應該就是安裝...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/804951-wordpress-automatic-upgrade-plugin-and-theme-bypass-ftp-connection/">「教學」WordPress 繞過 FTP 自動升級外掛與佈景主題</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>在前篇<a href="http://diary.taskinghouse.com/posts/799035-amazon-ec2-ubuntu-install-wordpress-website">「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站</a> 設定完成之後，初次登入 WordPress 做的第一件事情，應該就是安裝外掛跟佈景主題了，不過很遺憾的，您可能也會在這個步驟遇到第一個錯誤。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/804951/WEcIrKbuRmW5oFKY8Ihh_wp-ftp.png" alt="wp-ftp.png" /></p>
<p>「欲執行此動作， WordPress 需要訪問你的網頁伺服器。請輸入 Ftp 密碼繼續。若你記不得密碼，你應該向你的主機商聯繫。」</p>
<p>這到底是什麼意思呢？首先如果是用 EC2 的讀者，打從一開始就是使用 AWS 提供的金鑰，透過 SFTP 來登入 EC2 主機，哪來的 FTP 帳號密碼呢？為了趕快讓網站開張，這篇就來教教怎麼用最快的方法（逃避問題）繞過 FTP 直接開啟網頁端的檔案上傳功能。</p>
<p>會遇到這種錯誤，通常是目錄權限不足的問題，我們先將 WordPress 主目錄下面的 wp-content 以及 wp-includes 兩個資料夾的權限改成 <code>www-data:www-data</code> 同時記得如果網頁資料夾路徑或名稱有修改過，下方 <code>/var/www/wordpress/</code> 要更改成對應路徑。</p>
<pre><code>sudo chown -R www-data:www-data /var/www/wordpress/wp-content/
sudo chown -R www-data:www-data /var/www/wordpress/wp-includes/
</code></pre>
<p>接著，在 WordPress 主目錄下面的 wp-config.php 中插入下列這行指令：</p>
<pre><code>define('FS_METHOD', 'direct');
</code></pre>
<p><img decoding="async" src="https://taskinghouse.com/archives/804951/xgKFlt8Qwut2ijbqwWvd_FS_METHOD.jpg" alt="FS_METHOD.jpg" /></p>
<p>從此以後，就可以直接在網頁後台安裝、升級外掛跟佈景主題啦！</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/804951-wordpress-automatic-upgrade-plugin-and-theme-bypass-ftp-connection/">「教學」WordPress 繞過 FTP 自動升級外掛與佈景主題</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站</title>
		<link>https://taskinghouse.com/posts/799035-amazon-ec2-ubuntu-install-wordpress-website/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Wed, 24 Aug 2016 00:17:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2016-08-24-amazon-ec2-ubuntu-install-wordpress-website/</guid>

					<description><![CDATA[<p>在這篇開始之前，可以參考之前關於 Amazon EC2 的教學： 「教學」建立 Amazon EC2 免費主機 「教學」SSH 連線 Amazon EC2 主機...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/799035-amazon-ec2-ubuntu-install-wordpress-website/">「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>在這篇開始之前，可以參考之前關於 Amazon EC2 的教學：</p>
<p><a href="http://diary.taskinghouse.com/posts/309383">「教學」建立 Amazon EC2 免費主機</a><br />
<a href="http://diary.taskinghouse.com/posts/310691">「教學」SSH 連線 Amazon EC2 主機</a><br />
<a href="http://diary.taskinghouse.com/posts/432235">「教學」Amazon EC2 Ubuntu 安裝 Apache2 + MySQL + PHP</a></p>
<p>如果都準備好了，就可以開始安裝 WordPress 啦！</p>
<h2>Step 1</h2>
<p>首先可以到 <a href="https://tw.wordpress.org/" target="_blank" rel="noopener">WordPress 台灣正體中文網站</a> 下載最新版本的 WordPress 安裝包，這邊建議下載 .tar.gz 的格式，之後可以透過終端機指令來解壓縮。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/4xWapA2qQFOkYqlMKzvP_wordpress-official-page.png" alt="wordpress-official-page.png" /></p>
<h2>Step 2</h2>
<p>使用 FTP 將剛剛下載的 WordPress 安裝包上傳至 EC2 的網頁資料夾（您要用 <code>wget</code> 也行），預設路徑應該是 <code>/var/www/</code> 這裡。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/OK5mS15yQVuHkiz1LRVS_wp-setup-4.png" alt="wp-setup-4.png" /></p>
<h2>Step 3</h2>
<p>使用終端機 SSH 連線到 EC2，切換 <code>cd</code> 至網頁資料夾路徑，輸入指令解壓縮 WordPress 安裝包：</p>
<pre><code>tar zxvf wordpress-4.6-zh_TW.tar.gz
</code></pre>
<p>本文撰寫時最新版本的 WordPress 為 4.6，若讀者下載不同版本，請自行修改 .tar.gz 前的檔名，也可以使用 Linux 的自動補齊（Completion）功能，先輸入指令或檔案的前幾個字母，然後按下 Tab 鍵後 Shell 就會自動把指令或是檔案名稱剩餘的部份補齊。</p>
<h2>Step 4</h2>
<p>解壓縮完成後，名為「wordpress」的資料夾就是整個 WordPress 的主目錄，在開始設定之前，我們必須先為 WordPress 建立一個資料庫，登入 phpMyAdmin 點選左側「新增」並且建立一個新的資料庫，可以隨意命名，如：wordpress。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/fC2cvpiFQFa49SXb8jbp_phpmyadmin-wordpress.png" alt="phpmyadmin-wordpress.png" /></p>
<h2>Step 4</h2>
<p>資料庫建立完成之後，開啟瀏覽器並連上 WordPress 的主目錄，網址應該就是：</p>
<pre><code>http://ipaddress/wordpress
</code></pre>
<p>請記得把 ipaddress 換成自己 EC2 的 IP 位址</p>
<h2>Step 5</h2>
<p>如果一切正常，就會看到 WordPress 的歡迎畫面， 點「衝吧！」開始初始化設定。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/YiHa79gStWOYNXPTLPcT_wp-setup-1.png" alt="wp-setup-1.png" /></p>
<p>接下來要填寫基本的資料庫帳號資訊，資料庫名稱就是剛剛從 phpMyAdmin 建立的資料庫名稱，使用者名稱及密碼則是 phpMyAdmin 的帳密（如果您是用 phpMyAdmin 沒錯的話）</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/x7t2TyoqTAy5VZNzLqxj_wp-setup-2.png" alt="wp-setup-2.png" /></p>
<p>接下來應該會遇到無法寫入 wp-config.php 的錯誤，因為預設用 ubuntu 登入 FTP 的關係，整個主目錄資料夾的權限應該是屬於 <code>ubuntu:ubuntu</code>，若是要從網頁端寫入則要改成 <code>www-data:www-data</code>。不過這邊不用急著修改權限，只要用終端機編輯 <code>vi</code> 或是直接從 FTP 軟體上編輯 wp-config.php 這個檔案，把網頁上整段文字複製貼上即可。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/4hsCB8RBQUSQXL1GGWJW_wp-setup-3.png" alt="wp-setup-3.png" /></p>
<h2>Step 6</h2>
<p>接著就要設定網站名稱以及後台的帳號密碼，也就是建立網站管理員的帳號，這些資料之後都還可以修改，也可以再新增其他的編輯帳號或是管理員帳號。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/6aL7elMQJ6W8h1Rw56Kw_wp-setup-5.png" alt="wp-setup-5.png" /></p>
<h2>Step 7</h2>
<p>完成。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/L5AbC03TRigD9YaI3qPQ_wp-setup-6.png" alt="wp-setup-6.png" /></p>
<p>使用剛剛設定的帳號密碼登入 WordPress</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/0z2cKHbeRdu9sYG2cLco_wp-setup-7-welcome.png" alt="wp-setup-7-welcome.png" /></p>
<p>進入 WordPress 後台</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/799035/GWacITRS3OnrGiwH2qAA_wp-setup-8-control.png" alt="wp-setup-8-control.png" /></p>
<p>不過網站的網址總不能用 IP 位址吧？趕快來看看 <a href="http://diary.taskinghouse.com/posts/664386-amazon-ec2-ubuntu-setup-apache-virtual-hosts">「教學」Amazon EC2 Ubuntu 設定 Apache Virtual Hosts</a> 這篇教學。</p>
<h2>延伸閱讀</h2>
<p>如果你對 Amazon EC2 的主機規格、設定以及這些參數指令不是很熟悉，希望能有更簡單的主機方案選擇、中文介面，並且對 WordPress 友善的話，也可以參考老牌的 <a href="https://taskinghouse.com/go/siteground/">SiteGround</a> 主機，以 WordPress 虛擬主機來說，可以簡單區分為三種方案，每月只要大約 100-300 台幣的費用算是相當實惠。</p>
<p><strong>SiteGround WordPress Hosting</strong><br />
<a href="https://www.siteground.com/go/wp-admin" target="_blank" rel="noopener">https://www.siteground.com/go/wp-admin</a></p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/799035-amazon-ec2-ubuntu-install-wordpress-website/">「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」Amazon EC2 Ubuntu 設定 Apache Virtual Hosts</title>
		<link>https://taskinghouse.com/posts/664386-amazon-ec2-ubuntu-setup-apache-virtual-hosts/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Mon, 21 Mar 2016 00:31:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2016-03-21-amazon-ec2-ubuntu-setup-apache-virtual-hosts/</guid>

					<description><![CDATA[<p>對於架站者來說，如果只擁有一台主機但需要架設兩個以上的網站，那麼如何在同一個 IP（伺服器）上用不同的 Domain Name（網域名稱）架設多個網站？網路上某...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/664386-amazon-ec2-ubuntu-setup-apache-virtual-hosts/">「教學」Amazon EC2 Ubuntu 設定 Apache Virtual Hosts</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>對於架站者來說，如果只擁有一台主機但需要架設兩個以上的網站，那麼如何在同一個 IP（伺服器）上用不同的 Domain Name（網域名稱）架設多個網站？網路上某些教學是設定同 IP 但不同 Port，不過這是蠻爛的方法。因此本篇設定的重點就是以 Apache Virtual Host 的方式來對應多筆網域名稱，依照不同的網域名，提供不同的網頁內容。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/664386/n6BE0NZcRvyyoz1OkiXb_Virtual%20Host.png" alt="Virtual Host.png" /></p>
<p><em>前情提要：本篇使用 EC2 虛擬主機以及 Ubuntu 作業系統，若使用不同配置可參考相關教學來修改對應的設定。</em></p>
<p>首先，要設定 Apache 的 Virtual Hosts 之前，當然伺服器要有安裝 Apache，如果沒有的話可以用 <code>apt-get</code> 指令來安裝：</p>
<pre><code>sudo apt-get update
sudo apt-get install apache2
</code></pre>
<h2>第一步｜建立網頁根目錄</h2>
<p>由於目的是要在同個伺服器提供多個網頁，因此為不同的網域名稱建立個別的網頁資料夾。為了方便說明多個網域名稱的設定，這邊假設兩個網域名稱 <code>aaa.com</code> 以及 <code>bbb.com</code> 作為教學範例，而 Ubuntu 預設的網頁根目錄路徑為 <code>/var/www/</code>，因此我們在這個目錄下建立兩個網頁資料夾：</p>
<pre><code>sudo mkdir -p /var/www/aaa.com/public_html
sudo mkdir -p /var/www/bbb.com/public_html
</code></pre>
<h2>第二步｜設定根目錄權限</h2>
<p>建立完資料夾後，預設擁有者就是 root 使用者（Ubuntu 預設的 root 使用者名稱就是 ubuntu），如果要使用不同的系統使用者來管理，可以透過以下的指令來變更權限，記得將 <code>user</code> 更換成自己的使用這名稱。</p>
<pre><code>sudo chown -R user:user /var/www/aaa.com/public_html
sudo chown -R user:user /var/www/bbb.com/public_html
</code></pre>
<p>接著設定檔案的讀寫權限，確保網頁伺服器能正常讀寫網頁資料夾以及子目錄下的所有檔案。</p>
<pre><code>sudo chmod -R 755 /var/www/
</code></pre>
<h2>第三步｜建立 Virtual Host 檔案</h2>
<p>我們使用 Apache 預設的 Virtual Hosts 設定檔來修改，將預設設定檔複製到相同資料夾並重新命名成目標網域名稱，這邊先以剛剛假設的 <a href="http://aaa.com" target="_blank" rel="noopener">aaa.com</a> 來示範：</p>
<pre><code>sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/aaa.com.conf
</code></pre>
<p>接著使用 root 權限編輯新的設定檔：</p>
<pre><code>sudo nano /etc/apache2/sites-available/aaa.com.conf
</code></pre>
<p>設定檔原始的內容應該包含這段文字：</p>
<pre><code class="language-conf">&lt;VirtualHost *:80&gt;
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
&lt;/VirtualHost&gt;
</code></pre>
<p>首先先在 ServerAdmin 後面填寫伺服器管理員的 Email 以免哪天收到信（本人註冊網域那麼久從來沒收過）：</p>
<pre><code>ServerAdmin admin@aaa.com
</code></pre>
<p>接著更改 DocumentRoot 後面的網頁根目錄路徑：</p>
<pre><code>DocumentRoot /var/www/aaa.com/public_html
</code></pre>
<p>最後在 <code>&lt;VirtualHost *:80&gt;</code> 下方加入網域名稱設定，在 <code>ServerName</code> 後方填入原始的網域名稱，而 <code>ServerAlias</code> 則可以設定同網域的其他名稱，如加上 www 的版本：</p>
<pre><code>ServerName aaa.com
ServerAlias www.aaa.com
</code></pre>
<p>修改完成後設定檔中的 VirtualHost 設定應該會是這樣：</p>
<pre><code class="language-conf">&lt;VirtualHost *:80&gt;
    ServerAdmin admin@aaa.com
    ServerName aaa.com
    ServerAlias www.aaa.com
    DocumentRoot /var/www/aaa.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
&lt;/VirtualHost&gt;
</code></pre>
<p>儲存並關閉設定檔。</p>
<p>重複上述的步驟，複製第一個網域的設定檔來建立第二個網域的設定檔：</p>
<pre><code>sudo cp /etc/apache2/sites-available/aaa.com.conf /etc/apache2/sites-available/bbb.com.conf
</code></pre>
<p>複製完成後同樣進入編輯模式：</p>
<pre><code>sudo nano /etc/apache2/sites-available/bbb.com.conf
</code></pre>
<p>依照上面的模式修改第二個設定檔：</p>
<pre><code class="language-conf">&lt;VirtualHost *:80&gt;
    ServerAdmin admin@bbb.com
    ServerName bbb.com
    ServerAlias www.bbb.com
    DocumentRoot /var/www/bbb.com/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
&lt;/VirtualHost&gt;
</code></pre>
<p>儲存並關閉，兩個網域都設定完成了。</p>
<h2>第四步｜啟用 Virtual Host 檔案</h2>
<p>使用 <code>a2ensite</code> 指令來啟用設定檔：</p>
<pre><code>sudo a2ensite aaa.com.conf
sudo a2ensite bbb.com.conf
</code></pre>
<p>完成後重新啟動 Apache 服務，設定才會生效：</p>
<pre><code>sudo service apache2 restart
</code></pre>
<h2>第五步｜置入網頁檔案</h2>
<p>完成網域設定後，可以將網頁檔案（如果已經做好了）放入第一步建立的網頁資料夾裡面。比如說在這個範例就是 <code>/var/www/aaa.com/public_html</code> 跟 <code>/var/www/bbb.com/public_html</code> 這兩個資料夾。</p>
<p>網頁檔案放置完成後，就打開瀏覽器上去測試看看吧！如果上述步驟都設定成功，伺服器應該就可以依不同的網域名稱進入的連線，指派對應的網頁資料夾。</p>
<p>延伸閱讀：<a href="http://diary.taskinghouse.com/posts/799035-amazon-ec2-ubuntu-install-wordpress-website">「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站</a></p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/664386-amazon-ec2-ubuntu-setup-apache-virtual-hosts/">「教學」Amazon EC2 Ubuntu 設定 Apache Virtual Hosts</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」解決 WordPress 固定網址設定 404 錯誤</title>
		<link>https://taskinghouse.com/posts/664222-resolved-wordpress-permalinks-404-error/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Sun, 20 Mar 2016 22:57:07 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[EC2]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2016-03-21-resolved-wordpress-permalinks-404-error/</guid>

					<description><![CDATA[<p>前情提要：本篇使用 EC2 虛擬主機以及 Ubuntu 作業系統，若使用不同配置可參考相關教學來修改對應的設定。 在 WordPress 設定中，固定網址選項提...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/664222-resolved-wordpress-permalinks-404-error/">「教學」解決 WordPress 固定網址設定 404 錯誤</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p><em>前情提要：本篇使用 EC2 虛擬主機以及 Ubuntu 作業系統，若使用不同配置可參考相關教學來修改對應的設定。</em></p>
<p>在 WordPress 設定中，固定網址選項提供了預設、日期與名稱、月份與名稱、數值式、文章名稱、自訂結構等選項。其中網路上許多文章都大力推薦使用「文章名稱」來做為自訂網址結構，讓網址能提高美感。不過使用者做這樣的設定後，常常會遇到 404 錯誤，這時候很可能是伺服器 Rewrite 功能沒有正確設定。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/664222/SiDN33QTHaXJtBoJjpxQ_wordpress%20permalink.jpg" alt="wordpress permalink.jpg" /></p>
<p><img decoding="async" src="https://taskinghouse.com/archives/664222/truJOsHQLWaujvXbHrCY_%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202016-03-21%20%E4%B8%8B%E5%8D%884.19.35.png" alt="" /></p>
<p>如果真的不幸遇到 404 Not Found 的話，就趕快檢查一下伺服器設定吧！</p>
<p><strong>首先，確定 mod_rewrite 已經開啟。</strong></p>
<p>Apache 的 mod_rewrite 功能預設是關閉的，透過以下指令來啟動覆寫功能。</p>
<pre><code>sudo a2enmod rewrite
</code></pre>
<p>啟動 mod_rewrite 功能後必須重新啟動 Apache</p>
<pre><code>sudo service apache2 restart
</code></pre>
<p><strong>接著，修改 Apache 的主要設定檔。</strong></p>
<p>如果伺服器 Apache 配置多個網域，請找到 WordPress 對應的設定檔。如果沒有修改過，設定檔在 Ubuntu 的預設路徑為：</p>
<pre><code>/etc/apache2/sites-available/000-default.conf
</code></pre>
<p>使用 vi 或 nano 指令編輯檔案，主要設定檔的開頭應該是 <code>&lt;VirtualHost *:80&gt;</code> 在它上方加入這段：</p>
<pre><code>&lt;Directory "/var/www/wordpress/"&gt;
    AllowOverride All
&lt;/Directory&gt;
</code></pre>
<p>記得將 <code>/var/www/wordpress/</code> 換成 WordPress 安裝的根目錄路徑<br />
修改完成後儲存檔案，並再次重新啟動 Apache：</p>
<pre><code>sudo service apache2 restart
</code></pre>
<p><strong>最後，修改 .htaccess 檔案</strong></p>
<p>一般來說 WordPress 可以自動修改 .htaccess 檔案，但是遇到權限錯誤的問題也是常有的事，如果有這種狀況，WordPress 應該會提供設定好的 .htaccess 檔案內容，可以手動以 FTP 在網站根目錄去新增 .htaccess 檔案。</p>
<p>由於 .htaccess 檔案為隱藏檔，新增時可以先將 FTP 軟體的顯示設定打開，例如使用 FileZilla 請從工具列－伺服器－強制顯示隱藏檔案。以本篇 WordPress 自動產出的範例中 .htaccess 內容如下：</p>
<pre><code># BEGIN WordPress

&lt;IfModule mod_rewrite.c&gt;
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
&lt;/IfModule&gt;

# END WordPress
</code></pre>
<p>請以 WordPress 產生的為準。或是我們也可以新增空白的 .htaccess 檔案，並將權限暫時改為 777 rwxrwxrwx，讓 WordPress 能順利修改檔案，當自動設定完成後，再將 .htaccess 權限改回 644 rw-r&#8211;r&#8211; 即可。</p>
<p>如果以上都順利設定，在 WordPress 自訂的網址結構應該就能正常顯示啦！</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/664222/Rb2fC4ygTqiYVYDoKcMJ_wordpress%20permalink.png" alt="wordpress permalink.png" /></p>
<p>這樣的網址是不是乾淨又美觀呢？</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/664222-resolved-wordpress-permalinks-404-error/">「教學」解決 WordPress 固定網址設定 404 錯誤</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」Amazon EC2 Ubuntu 安裝 Apache2 + MySQL + PHP</title>
		<link>https://taskinghouse.com/posts/432235-amazon-ec2-ubuntu-install-apache2-mysql-php/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Thu, 14 Jan 2016 21:45:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2016-01-15-amazon-ec2-ubuntu-install-apache2-mysql-php/</guid>

					<description><![CDATA[<p>本篇使用的系統版本是位於 EC2 t2.micro 的虛擬主機下的 Ubuntu 14.04.2 LTS。若已經按照 「教學」建立 Amazon EC2 免費主...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/432235-amazon-ec2-ubuntu-install-apache2-mysql-php/">「教學」Amazon EC2 Ubuntu 安裝 Apache2 + MySQL + PHP</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>本篇使用的系統版本是位於 EC2 t2.micro 的虛擬主機下的 Ubuntu 14.04.2 LTS。若已經按照 <a href="http://diary.taskinghouse.com/posts/309383">「教學」建立 Amazon EC2 免費主機</a> 設定，以及服用上篇 <a href="http://diary.taskinghouse.com/posts/310691">「教學」SSH 連線 Amazon EC2 主機</a> 成功連上線，就可以接著來安裝 Apache、PHP、MySQL 這個經典的 LAMP 開源架站組合包啦。</p>
<h2>Step 1</h2>
<p>由於系統剛安裝好，因此在安裝套件前，先更新最新的套件資訊。</p>
<pre><code>sudo apt-get update
</code></pre>
<p>Reading package lists&#8230; Done</p>
<h2>Step 2</h2>
<p><strong>安裝 Apache 伺服器軟體</strong></p>
<pre><code>sudo apt-get install apache2
</code></pre>
<p>&#8230;<br />
Do you want to continue? [Y/n] y<br />
&#8230;<br />
<strong>Starting web server apache2</strong></p>
<h2>Step 3</h2>
<p><strong>安裝 MySQL</strong></p>
<pre><code>sudo apt-get install mysql-server php5-mysql
</code></pre>
<p>&#8230;<br />
Do you want to continue? [Y/n] y</p>
<p><strong>設定安全性</strong></p>
<pre><code>sudo mysql_install_db
</code></pre>
<pre><code>sudo mysql_secure_installation
</code></pre>
<h2>Step 4</h2>
<p><strong>安裝 PHP</strong></p>
<pre><code>sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt
</code></pre>
<h2>Step 5</h2>
<p>修改路徑設定檔的內容，改變 index.php 的執行優先權。</p>
<pre><code>sudo vi /etc/apache2/mods-enabled/dir.conf
</code></pre>
<pre><code class="language-php">&lt;IfModule mod_dir.c&gt;	
	DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
&lt;/IfModule&gt;
</code></pre>
<p>將 index.php 順序往前移</p>
<pre><code class="language-php">&lt;IfModule mod_dir.c&gt;
	DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
&lt;/IfModule&gt;
</code></pre>
<h2>Step 6</h2>
<p><strong>修改 Apache 設定檔</strong></p>
<pre><code>sudo vi /etc/apache2/apache2.conf
</code></pre>
<p>找到以下這段，並將內容修改如下：</p>
<pre><code>&lt;Directory /var/www/(此為網頁資料夾路徑)&gt;
	Options Indexes FollowSymLinks Includes ExecCGI
  AllowOverride All
  Require all granted
  Allow from all
&lt;/Directory&gt;
</code></pre>
<p><strong>重新啟動 Apache</strong></p>
<pre><code>sudo service apache2 restart
</code></pre>
<p>到這邊 LAMP 開源架站組合包基本上已經安裝完成了。在下一個步驟會指定網頁資料夾，這邊可以先用 ftp 軟體或是用指令 <code>mkdir</code> 在 /home/ubuntu/ 路徑下的使用者資料夾中，建立一個網頁資料夾。由於筆者本身有使用 Virtual Hosts 的需求，並沒有將網頁資料夾放置於 /home/ubuntu/ 使用者目錄下，並保留預設的網頁目錄 /var/www/html 作為跳轉網頁，也就不需要繼續以下步驟了。</p>
<p>關於 Virtual Hosts 的設定方式在這篇教學：<a href="http://diary.taskinghouse.com/posts/664386">「教學」EC2 Ubuntu 設定 Apache Virtual Hosts</a></p>
<h2>Step 7</h2>
<p>將 Apache2 設為網頁資料夾 Owner 與 Group Owner 權限，這邊的「網頁資料夾」可以命名為自訂的名稱。</p>
<pre><code>sudo chown -R www-data:www-data /home/ubuntu/網頁資料夾
</code></pre>
<p>增加 www-data 的次要群組權限</p>
<pre><code>sudo usermod -a -G www-data ubuntu
</code></pre>
<p>將 www-data 設為最高的群組權限</p>
<pre><code>sudo usermod -g www-data ubuntu
</code></pre>
<p>更改資料夾權限</p>
<pre><code>sudo chmod -R 775 /home/ubuntu/網頁資料夾
</code></pre>
<h2>Step 8</h2>
<p>修改 Apache 設定檔，指定伺服器網頁目錄</p>
<pre><code>sudo vi /etc/apache2/sites-available/000-default.conf
</code></pre>
<p>將 DocumentRoot 的預設網頁路徑</p>
<pre><code>DocumentRoot /var/www/html
</code></pre>
<p>改成</p>
<pre><code>DocumentRoot /home/ubuntu/網頁資料夾
</code></pre>
<p><strong>重新啟動 Apache</strong></p>
<pre><code>sudo service apache2 restart
</code></pre>
<h2>完成</h2>
<p>接下來：<a href="http://diary.taskinghouse.com/posts/799035-amazon-ec2-ubuntu-install-wordpress-website">「教學」Amazon EC2 Ubuntu 建立並啟動 WordPress 網站</a></p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/432235-amazon-ec2-ubuntu-install-apache2-mysql-php/">「教學」Amazon EC2 Ubuntu 安裝 Apache2 + MySQL + PHP</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」Amazon EC2 安裝 XAMPP Access Forbidden 權限錯誤</title>
		<link>https://taskinghouse.com/posts/364809-amazon-ec2-install-xampp-access-forbidden/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Wed, 16 Dec 2015 07:06:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2015-12-16-amazon-ec2-install-xampp-access-forbidden/</guid>

					<description><![CDATA[<p>裝於安裝好 XAMPP 很開心的啟動服務 Starting XAMPP for Linux 5.6.3-0... XAMPP: Starting Apache....</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/364809-amazon-ec2-install-xampp-access-forbidden/">「教學」Amazon EC2 安裝 XAMPP Access Forbidden 權限錯誤</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>裝於安裝好 XAMPP 很開心的啟動服務</p>
<pre><code>Starting XAMPP for Linux 5.6.3-0...
XAMPP: Starting Apache...already running.
XAMPP: Starting MySQL...ok.
XAMPP: Starting ProFTPD...ok.
</code></pre>
<p>在瀏覽器輸入伺服器 IP 後，卻遇到權限錯誤&#8230;</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/364809/i8dwP7h0RUatXyBqdkG3_Access%20Forbidden.png" alt="Access Forbidden.png" /></p>
<p>這時候可以透過編輯 httpd-xampp.conf 檔案來解決<br />
記得先備份原始的檔案，並且用 root 權限來編輯：</p>
<pre><code>sudo vim /opt/lampp/etc/extra/httpd-xampp.conf
</code></pre>
<p>並且在下面的區塊加入這兩行</p>
<pre><code>Allow from all
Require all granted
</code></pre>
<p>加在這個區塊：</p>
<pre><code>&lt;Directory "/opt/lampp/phpmyadmin"&gt; 
  AllowOverride AuthConfig Limit 
  Order allow,deny 
&lt;/Directory&gt; 
</code></pre>
<p>加完變成這樣：</p>
<pre><code>&lt;Directory "/opt/lampp/phpmyadmin"&gt; 
  AllowOverride AuthConfig Limit 
  Order allow,deny 
  Allow from all
  Require all granted
&lt;/Directory&gt; 
</code></pre>
<p>最後重新啟動 XAMPP</p>
<p><code>sudo /opt/lampp/lampp restart</code></p>
<p>大功告成。</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/364809-amazon-ec2-install-xampp-access-forbidden/">「教學」Amazon EC2 安裝 XAMPP Access Forbidden 權限錯誤</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」SSH 連線 Amazon EC2 主機</title>
		<link>https://taskinghouse.com/posts/310691-ssh-connection-amazon-ec2/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Mon, 09 Nov 2015 05:30:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2015-11-09-ssh-connection-amazon-ec2/</guid>

					<description><![CDATA[<p>接上篇 「教學」建立 Amazon EC2 免費主機 完成 EC2 新增實例，將虛擬機器開機後 接下來則要使用 SSH 連線到主機進行後續安裝 本篇以 Mac ...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/310691-ssh-connection-amazon-ec2/">「教學」SSH 連線 Amazon EC2 主機</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>接上篇 <a href="http://diary.taskinghouse.com/posts/309383">「教學」建立 Amazon EC2 免費主機</a><br />
完成 EC2 新增實例，將虛擬機器開機後<br />
接下來則要使用 SSH 連線到主機進行後續安裝<br />
本篇以 Mac 內建的終端機來示範：</p>
<h2>使用 Mac 內建的終端機進行連線</h2>
<p>打開 Mac 內建的終端機（Terminal）後<br />
應該會是這樣的畫面 <code>電腦名稱:~ 使用者名稱$</code><br />
與一般 Linux 系統一樣在 <code>$</code> 後面輸入以下指令：</p>
<pre><code>ssh -i ~/路徑/密鑰名稱.pem 使用這名稱@IP
</code></pre>
<p><img decoding="async" src="https://taskinghouse.com/archives/310691/MYuTbAFrQDGc9R5hxD6S_terminal.png" alt="terminal.png" /></p>
<p>如果使用 Mac 將密鑰儲存在某個資料夾<br />
並不是很確定該怎麼打路徑的時候<br />
可以把密鑰檔「拖曳」到終端機的輸入位置放開<br />
就會自動輸入包含檔名的整個路徑了<br />
如若是放在 Mac 桌面就是 <code>~/Desktop/密鑰名稱.pem</code></p>
<p>跟在密鑰路徑後面的使用者名稱不是電腦的使用者名稱喔<br />
而是當初所選的 Amazon AMI 的使用者名稱，如：</p>
<p>若選擇 <code>Amazon Linux AMI</code> 使用者名稱則是 <code>ec2-user</code><br />
若選擇 <code>Ubuntu Server LTS</code> 使用者名稱則是 <code>ubuntu</code></p>
<p>如果不是很確定也沒有關係，這邊告訴大家怎麼查詢<br />
我們先到 AWS EC2 的主控台，選擇「Instances」</p>
<pre><code>https://console.aws.amazon.com/ec2/v2/home
</code></pre>
<p>在 Instances 選定主機後按「Connect」<br />
這邊出現的訊息就會直接設定好使用這名稱與 IP 位址<br />
只要複製貼上再修改密鑰檔的路徑即可</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/310691/DQPhuz2STTXz7lUdTuw9_connect.png" alt="connect.png" /></p>
<h2>UNPROTECTED PRIVATE KEY FILE 問題</h2>
<p>The authenticity of host &#8216;●●●.●●●.●●●.●●● (●●●.●●●.●●●.●●●)&#8217; can&#8217;t be established.<br />
ECDSA key fingerprint is SHA256:●●●●●●●●●●●●.<br />
Are you sure you want to continue connecting (yes/no)? yes<br />
Warning: Permanently added &#8216;●●●.●●●.●●●.●●●&#8217; (ECDSA) to the list of known hosts.<br />
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<br />
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @<br />
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@<br />
Permissions 0640 for &#8216;/Users/●●●/Desktop/●●●.pem&#8217; are too open.<br />
It is required that your private key files are NOT accessible by others.<br />
This private key will be ignored.<br />
Load key &#8220;/Users/●●●/Desktop/●●●.pem&#8221;: bad permissions<br />
Permission denied (publickey).</p>
<p>初次使用 Key Pair 登入 EC2 可能會遇到這個警告<br />
通常是因為這個鑰匙檔的權限太過於公開<br />
不過其實剛剛上圖「Connect」訊息中就有提示<br />
我們也可以直接使用終端機來處理這個問題</p>
<pre><code>chmod 400  ~/路徑/密鑰名稱.pem
</code></pre>
<p>由上述指令將 <code>.pem</code> 檔改成只有使用者可以讀取的權限<br />
應該就可以正常登入了，顯示畫面如下：</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/310691/h4bTPKUeRDSsc00pMYXl_ubuntu.png" alt="ubuntu.png" /></p>
<p>緊接著，就可以安裝 Apache、PHP、MySQL 等套件了。</p>
<p><a href="http://diary.taskinghouse.com/posts/432235">「教學」Amazon EC2 Ubuntu 安裝 Apache2 + MySQL + PHP</a></p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/310691-ssh-connection-amazon-ec2/">「教學」SSH 連線 Amazon EC2 主機</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>「教學」建立 Amazon EC2 免費主機</title>
		<link>https://taskinghouse.com/posts/309383-setup-free-amazon-ec2-instance/</link>
		
		<dc:creator><![CDATA[Victor Hung]]></dc:creator>
		<pubDate>Sun, 08 Nov 2015 16:54:07 +0000</pubDate>
				<category><![CDATA[EC2]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[Amazon]]></category>
		<guid isPermaLink="false">https://diary.taskinghouse.com/posts/2015-11-08-setup-free-amazon-ec2-instance/</guid>

					<description><![CDATA[<p>Amazon Web Service 提供的許多服務項目，都包含了一年期的免費試用，實在是相當的慷慨。 反而向來很大方的 Google 在 Google Clo...</p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/309383-setup-free-amazon-ec2-instance/">「教學」建立 Amazon EC2 免費主機</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></description>
										<content:encoded><![CDATA[<p>Amazon Web Service 提供的許多服務項目，都包含了一年期的免費試用，實在是相當的慷慨。<br />
反而向來很大方的 Google 在 Google Cloud Platform 所提供的免費試用卻僅有 60 天。</p>
<p>這篇要講的是 Amazon Elastic Compute Cloud (Amazon EC2)<br />
以下來示範如何建立 EC2 的免費實例：</p>
<h2>申請帳號</h2>
<p>當然要開始免費試用亞馬遜雲端服務之前，必須要有一個 Amazon 的帳號。<br />
可以到以下 AWS 免費方案的頁面，並「建立免費帳戶」</p>
<pre><code>https://aws.amazon.com/tw/free/
</code></pre>
<p>註冊流程大概是：</p>
<ol>
<li>Login Credentials 註冊確認（先填寫電郵、姓名與設定密碼）</li>
<li>Contact Information 基本資料（填寫比較詳細的個人資訊）</li>
<li>Payment Method 付款方式（必須綁定信用卡但暫時不會扣款）</li>
<li>Identity Verification 身分認證（電話語音認證碼的驗證）</li>
<li>Confirmation 完成驗證（到電子郵件收取確認信件）</li>
</ol>
<p>這樣就完成帳號註冊了，登入準備進行下一個步驟。</p>
<h2>0. 新增實例</h2>
<p>首先從以下網址連結到 AWS 主控台，並且選擇 EC2 服務。</p>
<pre><code>https://console.aws.amazon.com/
</code></pre>
<p>我們要新增一台虛擬主機，因此點選「Launch Instance」<br />
其實不是很瞭解亞馬遜用的 Instance 實例 這個字，聽起來是有點深奧。<br />
但是別怕，這個部落格就是喜歡看圖說故事：</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/pt53j8n5QXmNodBmCA0Z_0.%20Launch%20Instance.png" alt="0. Launch Instance.png" /></p>
<h2>1. Choose AMI 選擇亞馬遜系統映像</h2>
<p>亞馬遜提供了許多選擇，包括自家的 Amazon Linux AMI<br />
選定了系統映像，之後開機之後，就會預先包含了選定的作業系統<br />
當然也還有許多選擇，如：</p>
<ul>
<li>Red Hat Enterprise Linux</li>
<li>SUSE Linux Enterprise Server</li>
<li>Ubuntu Server LTS</li>
<li>Microsoft Windows Server</li>
</ul>
<p>可以依照自己習慣選擇作業系統的版本<br />
我這邊選擇了 Ubuntu 的映像<br />
寫這篇文章的時候版本是</p>
<pre><code>Amazon Linux AMI 2015.09.1 (HVM), SSD Volume Type
</code></pre>
<p>另外在網頁右上角還可以選擇伺服器的區域<br />
整個 AWS 服務在世界各地有許多據點<br />
本篇選定的主機是亞太區的東京主機</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/uzHbkWrQhmKoaIY124Tq_1.%20Choose%20AMI.png" alt="1. Choose AMI.png" /></p>
<h2>2. Choose Instance Type 選擇實例類別</h2>
<p>這裡就是虛擬主機的效能大比拼了！<br />
Amazon 提供了相當多不同用途、效能的選擇<br />
並且搭配可以彈性擴充的特色讓客戶可以靈活運用<br />
目前適用一年期免費方案的實例是 <strong>t2.micro</strong></p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/URK0HuFxR4qaLcwfuL8K_2.%20Choose%20Instance%20Type.png" alt="2. Choose Instance Type.png" /></p>
<h2>3. Configure Instance 設定安裝實例</h2>
<p>設定新增實例的數量以及一些設定細節<br />
這部份可以用預設值，直接進入下一步</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/dNMtHHiDTRSNEelDzbRf_3.%20Configure%20Instance.png" alt="3. Configure Instance.png" /></p>
<h2>4. Add Storage 配置儲存空間</h2>
<p>系統預設提供了 8GB 的 Amazon Elastic Block Store (Amazon EBS)<br />
提供用於 Amazon EC2 執行個體的持久性資料區塊級儲存磁碟區<br />
免費試用的方案可以選擇 30GB 的 SSD 或磁帶儲存</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/PyOsvAX4SDSLAKeqMSwa_4.%20Add%20Storage.png" alt="4. Add Storage.png" /></p>
<h2>5. Tag Instance 實例標籤</h2>
<p>這邊也可以使用預設留空，跳過。</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/xALCvdBHTUWXg5NDmOjt_5.%20Tag%20Instance.png" alt="5. Tag Instance.png" /></p>
<h2>6. Configure Security Group 安全模組設定</h2>
<p>在 EC2 中對於不同的實例可以搭配不同的安全設定<br />
在這邊預設有用來連線到主機的 SSH 22 Port<br />
如果要架設網站則會需要用到 HTTP 80 Port</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/I8bWJdb7SVuYluGtLnBr_6.%20Configure%20Security%20Group.png" alt="6. Configure Security Group.png" /></p>
<p>在新增實例的步驟中，可以選擇「Create a <strong>new</strong> security group」<br />
由「Add Rule」來新增所需要用到的 Port<br />
或是也可以在完成新增實例後，到管理控制台編輯 Security Group<br />
例如事後發現需要使用 Gmail 寄信的功能<br />
就必須再新增一個 SMTPS 465 Port，Source 選 Anywhere</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/4Oe9adQdRwimMiPRxEoL_6.1%20Configure%20Security%20Group.png" alt="6.1 Configure Security Group.png" /></p>
<h2>7. Review 檢查設定</h2>
<p>到這邊 EC2 已經完成設定了<br />
可以檢查一下剛剛設的參數<br />
若沒問題就可以按下「Launch」開機</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/sKg8EjWhR7SW2ItzYoAS_7.%20Review.png" alt="7. Review.png" /></p>
<h2>8. Key Pair 連線密鑰</h2>
<p>Amazon EC2 主機必須要用特製的 Key Pair 來登入<br />
上個步驟按下「Launch」後，如果是第一次新增實例<br />
則會跳出 Create a new key pair 的視窗<br />
此時為 key pair 取一個簡單的名字<br />
按下「Download Key Pair」後則會自動下載一個 <code>.pem</code> 檔</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/aAhZr06cTX6JJBjusquT_8.%20Key%20Pair.png" alt="8. Key Pair.png" /></p>
<h2>9. Launching 正式啟動</h2>
<p>到這邊就完成新增實例的設定精靈<br />
不過還必須替虛擬機器指定一個位址</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/yQT2AlaISiASkSjpZxKw_9.%20Launching.png" alt="9. Launching.png" /></p>
<h2>10. Allocate New Address</h2>
<p>雖然前一陣子新聞報導 IPv4 的位址已經用光光<br />
但是看來亞馬遜這個電商龍頭還是留了一手<br />
我們從 AWS EC2 的控制台來取得 IP 位置<br />
按下「Allocate New Address」<br />
還是取得了一個 IPv4 的 IP 位址</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/YkBeq2szT0KFfFZCxBKm_10.%20Allocate%20New%20Address.png" alt="10. Allocate New Address.png" /></p>
<h2>11. Associate Address</h2>
<p>取得了 IP 位址後還得要指定給虛擬主機<br />
選擇剛取得的 IP 位址按「Actions」<br />
選擇「Associate Address」（請見上圖）</p>
<p>按一下「Instance」的欄位讓它讀取（請見下圖）<br />
接著會列出帳戶中所有 Instance<br />
如果是第一次建立應該就只會有一個<br />
選擇完畢後按下「Associate」就完成了</p>
<p><img decoding="async" src="https://taskinghouse.com/archives/309383/AgleC4MvS16e1oQbVNs0_11.%20Associate%20Address.png" alt="11. Associate Address.png" /></p>
<p><strong>使用 SSH 連線到主機請見下篇</strong></p>
<p>➤ <a href="https://taskinghouse.com/posts/310691">「教學」SSH 連線 Amazon EC2 主機</a></p>
<h2>延伸閱讀</h2>
<p>如果你對 Amazon EC2 的主機規格、設定以及這些參數指令不是很熟悉，希望能有更簡單的主機方案選擇、中文介面，並且對 WordPress 友善的話，也可以參考老牌的 <a href="https://taskinghouse.com/go/siteground/">SiteGround</a> 主機，以 WordPress 虛擬主機來說，可以簡單區分為三種方案，每月只要大約 100-300 台幣的費用算是相當實惠。</p>
<p><strong>SiteGround WordPress Hosting</strong><br />
<a href="https://www.siteground.com/go/wp-admin" target="_blank" rel="noopener">https://www.siteground.com/go/wp-admin</a></p>
<p>這篇文章 <a rel="nofollow" href="https://taskinghouse.com/posts/309383-setup-free-amazon-ec2-instance/">「教學」建立 Amazon EC2 免費主機</a> 最早出現於 <a rel="nofollow" href="https://taskinghouse.com">TaskingHouse</a>。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
