Назад | Перейти на главную страницу

Создание субдомена с помощью Amazon AWS против создания субдомена на сервере - в чем разница?

У меня есть экземпляр на Amazon AWS (сервер Ubuntu).

Я хочу создать поддомен для своего сайта: tools.example.com для людей в офисе, в котором я работаю, и создавать инструменты (с использованием PHP), с которыми сотрудники могут работать. (например, веб-приложения для автоматизации кода).

Я сам никогда не создавал поддомен на сервере Linux (обычно я работал с хостинговыми компаниями с помощью cPanel ect ''), и я новичок в Amazon AWS, который я считаю очень крутым, и работаю с сервером Linux и делаю все сам по себе - Чрезвычайно круто!

Итак, я начал изучать, как создать поддомен на моем веб-сайте, и дошел до того, что знаю, что у меня есть 2 варианта, которые я точно не знаю, в чем разница между ними, что будет последствия для моей работы и т. д. ».

Первый вариант - создание поддомена с помощью 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 (28.10.2015):

Хорошо, я сделал это:

<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/ это решило мою проблему.

Большое спасибо!

Для правильной работы поддомена вам нужны две вещи.

  1. Запись DNS на сервере DNS. Эти записи должны быть созданы на серверах имен, которые вы настроили в своем голом домене (yourdomain.tld). Если вы уже используете Amazon Route53 для своего голого домена, это нормально, вы также можете использовать его для своего поддомена (Amazon Route53 - это просто служба хостинга DNS)

  2. Виртуальный хост на веб-сервере.

Вот в чём дело с Amazon Web Services. У вас есть множество вариантов построения инфраструктуры, начиная с простой EBS (Elastic Beanstalk), которая обеспечивает простую в развертывании (также известную как «быстрый и грязный» способ) среду.

Другой вариант - использовать EC2 и построить его самостоятельно, и, поскольку вы выбрали именно этот путь, в основном вам нужно:

В своем Route 53 создайте CNAME или запись A, указывающую на IP-адрес вашего экземпляра (вы должны использовать эластичные 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% идеально для производственной среды.

Ця!