2012-07-25 193 views
1

我有一個裸域我打算用QR碼使用(因此希望保持它儘可能短重定向AWS路53區頂點AWS S3 - 如qrc.me使用EC2實例

我想將此域名重定向到AWS S3 Bucket(最終爲Cloudfront發行版),但AWS Route 53不會讓我添加CNAME記錄作爲頂點區域。

我知道有一項名爲http://arecord.net的服務,它看起來像它做我需要的東西(給我一個映射到CNAME的IP地址),但是我有一個完全可定製的EC2實例池供我使用,所以我想自己做一些事情

我的問題是,如何最好地建立一個真正精益運行的EC2實例,接收請求並簡單地重定向到S3存儲桶上的等效URL。

我是一個Windows的傢伙,所以在IIS中更好,但是如果Apache能夠以更好的性能完成同樣的工作,我很樂意去那樣做。

謝謝。

回答

1

下面是我工作:

鑑於這種記錄在路線53:

www.foobles.com CNAME foobles.herokuapp.com 

我想輸入 「foobles.com」 和被重定向到「www.foobles。 COM」

  1. 我創建了一個EC2實例微與Ubuntu 12.04和它相連的彈性IP,讓我們 說11.55.21.22。然後,我的設置A記錄foobles.com

    foobles.com A 11.55.21.22

  2. 我建立了一個基本的Apache服務器:

    (從我的本地機器)

    ssh -i ~/.ssh/cert.pem [email protected] 
    

    (從這裏開始,所有命令都在foobles服務器上)

    sudo apt-get install apache2 
    
  3. 我創建了一個重寫規則

    sudo touch /etc/apache2/sites-available/foobles_zone_apex 
    

    ,並把下面的規則吧:

    RewriteEngine On 
    RewriteCond %{HTTP_HOST} !^www\. 
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 
    
  4. 我啓用了Apache2的重寫模塊

    sudo a2enmod rewrite 
    
  5. 並啓用了網站

    sudo a2ensite foobles_zone_apex 
    
  6. 最後,刪除默認主機

    sudo a2dissite default 
    
  7. sudo service apache2 reload 
    

如果一切順利的話,你應該能夠做到這一點:

curl localhost/blargh 

,看看這個:

<html><head> 
<title>302 Found</title> 
</head><body> 
<h1>Found</h1> 
<p>The document has moved <a href="http://www.localhost//blargh">here</a>.</p> 
<hr> 
<address>Apache/2.2.22 (Ubuntu) Server at localhost Port 80</address> 
</body></html> 

這似乎相當快,即使是微實例。儘管如此,我不會公佈這個URL,所以在你的情況下,你將不得不做一個性能測試或將它移動到一個更大的實例。