AmazonのElastic Beanstalk内でアプリケーションをセットアップしようとしています。アプリケーションの一部にサブドメインを使用したいと思います。理想的には、そのサブドメインはドキュメントルート内のフォルダーにマップされます(例: http://test.mydomain.com は、/ var/www/html/testからソースをプルします)。 Route 53でサブドメインの別のエイリアスレコードを設定できますが、Apacheをマップするにはどうすればよいですか?
これを達成するために考えられる唯一の方法は、サーバーに直接SSHで接続し、VirtualHostエントリをhttpd.confに追加して、そのサーバーをAMIにロールバックし、EBS全体に再デプロイすることです。それが唯一の選択肢ですか? (もっと簡単な方法があるはずです)
ありがとう!
これはElasticBeanstalkでは不可能です(少なくとも実際に誤用しない限り)。 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/
正しい答えの後にスクロールする人のためにここに解決策があります。
$ cd etc/httpd/conf/
$ Sudo nano httpd.conf
これらの行を最後に追加します
<VirtualHost *:80>
ServerAlias yourstaticsubdomain.example.com
DocumentRoot "/var/www/html/static"
<Directory "/var/www/html/static">
AllowOverride All
Require all Granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAlias www.example.com
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
AllowOverride All
Require all Granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAlias *.example.com
DocumentRoot "/var/www/html/wildcard"
<Directory "/var/www/html/wildcard">
AllowOverride All
Require all Granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName waybill.work
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
AllowOverride All
Require all Granted
</Directory>
</VirtualHost>
注:2.4未満のAppacheバージョンはこの行を追加します
NameVirtualHost *:80
上記のコードの前。