Apache-2.2

使用 Amazon AWS 創建子域與從伺服器內創建子域 - 有什麼區別?

  • February 27, 2016

我在 Amazon AWS(Ubuntu 伺服器)上有一個實例。

我想為我的網站創建一個子域:tools.example.com為我工作的辦公室裡的人,並建構工具(使用 PHP),以便員工可以使用。(例如程式碼自動化網路應用程序)。

我自己從未在 Linux 伺服器上創建過子域(我通常與使用 cPanel 等的託管公司合作),而且我是 Amazon AWS 的新手,我覺得它非常棒,並且使用 Linux 伺服器並做所有事情我自己 - 非常棒!

所以我開始探索如何在我的網站上創建一個子域,我知道我有兩個選項,我不知道它們之間有什麼區別,什麼是對我的工作等的影響”。

第一個選項是使用 Amazon Route53 創建子域:http: //docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingNewSubdomain.html

我遇到的第二個選項是使用 Ubuntu 伺服器本身執行此操作,例如: https : //askubuntu.com/questions/463618/setting-up-subdomain-on-ubuntu-server http://kim.sg/index。 php/ubuntu/17-how-to-setup-subdomain-on-ubuntu-server-14-04

有些事情對我來說似乎有點模糊,我很樂意從對理論“東西”了解更多的人那裡得到更多的啟發點,並且會知道引導我做出最適合我的選擇。

請隨時問我問題。

對於@Stefano Martins(2015 年 10 月 28 日):

好的,我這樣做了:

<VirtualHost *:80>
   ServerName tools.example.com
   ServerAdmin walid@example.com

   ErrorLog /var/www/tools.example.com/logs/error.log
   CustomLog /var/www/tools.example.com/logs/access.log combined
   DocumentRoot /var/www/tools.example.com/public_html
</VirtualHost>

mkdir -p /var/www/tools.example.com/{public_html,logs}

sudo a2ensite tools.example.com.conf
sudo service apache2 reload
sudo find /var/www/tools.example.com/public_html -type d -exec chmod 755 {} \;
sudo find /var/www/tools.example.com/public_html -type f -exec chmod 644 {} \;
sudo adduser ubuntu www-data
sudo find /var/www/tools.example.com/public_html -type d -exec chmod 775 {} \;
sudo find /var/www/tools.example.com/public_html -type f -exec chmod 664 {} \;

我的文件夾是var一個,而不是srv. 我將所有內容從 srv 更改為 var,現在我不再收到 403 錯誤。但現在我無法/var/www/tools.example.com/public_html通過 FTP 上傳。

更新: 我用sudo chown www-data:www-data -R /var/www/ 它解決了我的問題。

多謝!

亞馬遜網路服務就是這樣。您有很多選擇來建構您的基礎架構,從簡單的 EBS(Elastic Beanstalk)開始,它提供了一個易於部署(又名又快又髒的方式)環境。

另一種選擇是使用 EC2 並自己建構它,由於這是您目前選擇的方式,基本上您需要的是:

在您的 Route 53 中,創建指向您的實例 IP 地址的 CNAME 或 A 記錄(您應該使用彈性 IP 以確保您的實例始終獲得相同的 IP 地址)。我建議使用 CNAME 條目,因為您的區域中已經有一條 A 記錄。它使您的 DNS 解析速度稍慢一些,但更容易管理時間。我們可以稱之為 tools.example.com。

在您的 Apache 配置目錄(通常是 /etc/apache2/sites-available)中,創建一個名為 tools.example.com.conf 的文件,其內容如下:

<VirtualHost *:80>
   ServerName tools.example.com
   ServerAdmin me@example.com

   ErrorLog /srv/www/tools.example.com/logs/error.log
   CustomLog /srv/www/tools.example.com/logs/access.log combined
   DocumentRoot /srv/www/tools.example.com/public_html
</VirtualHost>

創建將儲存您的站點/應用程序的目錄:

mkdir -p /srv/www/tools.example.com/{public_html,logs}

啟用新的虛擬主機並重新載入 Apache 的服務:

sudo a2ensite tools.example.com.conf
sudo service apache2 reload

提示:在大多數情況下,使用 AWS 基礎設施和開箱即用的解決方案更便宜。

注意:基本上,這就是您所需要的,但這對於生產環境來說並不是 100% 理想的。

啊!

引用自:https://serverfault.com/questions/728648