Amazon-Ec2
在 Amazon AWS Elastic Beanstalk 中設置子域
我正在嘗試在 Amazon 的 Elastic Beanstalk 中設置一個應用程序,並且我想為該應用程序的一部分使用一個子域。理想情況下,該子域將映射到文件根目錄中的文件夾(即: http ://test.mydomain.com從 /var/www/html/test 中提取源)。我可以在 Route 53 中為子域設置另一個別名記錄,但是如何映射 Apache?
我能想到的唯一方法是直接通過 SSH 連接到伺服器,將 VirtualHost 條目添加到我的 httpd.conf,然後將該伺服器滾動到 AMI 並跨 EBS 重新部署。那是唯一的選擇嗎?(似乎必須有更簡單的方法)
謝謝!
這對於 Elastic Beanstalk 是不可能的(至少在沒有真正濫用它的情況下是不可能的)。Elastic Beanstalk 是針對簡單部署的“即發即棄”類型的 PaaS 解決方案。如果您真的需要這種類型的功能,請查看CloudFormation,它可以讓您更精細地使用實例配置。
試試下面的連結。
在 .ebextensions 目錄中的根目錄中添加一個配置文件。
然後添加這個。
files: "/etc/httpd/conf.d/vhost.conf": mode: "000644" owner: root group: root encoding: plain content: | NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "/var/app/current/" <Directory "/var/app/current/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> </VirtualHost> <VirtualHost *:80> ServerName your-custom-domain-here.com DocumentRoot "/var/app/current/your-new-webroot" <Directory "/var/app/current/your-new-webroot"> Options Indexes FollowSymLinks MultiViews AllowOverride All Require all granted </Directory> </VirtualHost>
更多資訊在這裡:
http://blog.celingest.com/en/2013/04/05/elastic-beanstalk-cloudflare-newrelic-virtualhost-2/