我想让多个域转到同一个EC2实例。所有人都拥有相同的IP。我已经设置了多个vhost文件作为domain1.com和domain2.com。我在任何htaccess文件或vhost文件中都没有任何特殊之处。我通过GoDaddy拥有域名,他们指向EC2 IP。我遇到的问题是域1和域2都转到同一个文件夹并在浏览器中显示相同的index.html。
根据https://help.ubuntu.com/lts/serverguide/httpd.html我看到httpd.conf不再存在了,我在apache2.conf中看不到任何关于ghosts的内容。
(正如你所看到的那样,我已经尝试过注释掉了)
*不使用溃败53,我不想使用它,除非我也有*
vhost文件:
(域名1)
#SSLStaplingCache shmcb:/tmp/stapling_cache(128000)
SSLStaplingCache shmcb:${APACHE_RUN_DIR}/ssl_stapling_cache(128000)
<VirtualHost *:80>
ServerAdmin me@localhost
ServerName domain1.com
ServerAlias www.domain1.com
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLUseStapling on
RewriteEngine on
#RewriteRule domain1.com\/$ http://domain1.com [NC]
RewriteCond %{SERVER_NAME} =domain1.com [OR]
RewriteCond %{SERVER_NAME} =domain1.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
(域名2)
<VirtualHost *:80>
ServerAdmin me@gmail.com
ServerName domain2.com
ServerAlias www.domain2.com
DocumentRoot /var/www/html/domain2.com
# ServerPath "/domain2.com/"
# RewriteEngine On
# RewriteRule "^(/domain2.com/.*)" "/html/domain2.com$1"
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/html/domain2.com>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
#RewriteEngine on
#RewriteRule domain2.com\/$ http://domain2.com/index.php [NC]
</VirtualHost>
default-ssl.conf文件:
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin me8@gmail.com
ServerName domain1.com
DocumentRoot /var/www/html/domain1.com
***********编辑****************
apache2 -v
Server version: Apache/2.4.18 (Ubuntu)
Server built: 2017-09-18T15:09:02
sudo apachectl configtest
Syntax OK
我已经完成了&#34; sudo a2ensite&#34;命令在vhost文件上并在它们之后重新启动apache
*******编辑****************
在主持人中:
127.0.0.1 localhost
127.0.1.1 domain1.com
127.0.1.2 domain2.com
答案 0 :(得分:0)
您应该提供更多详细信息: 您使用的是什么实例/ LAMP? 你正确配置vhost吗?
对于Bitnami堆栈,例如,您应该添加正确的以下行添加到/opt/bitnami/apache2/conf/bitnami/bitnami-apps-vhosts.conf的末尾: 包括“/ path to your configuration file.conf”
重启apache: $ sudo /opt/bitnami/ctlscript.sh restart apache
对于普通的Ubuntu,(在安装了apache之后),你应该包括你的配置文件,如下所示: /etc/apache2/sites-available/example.com.conf
确保启用虚拟主机文件: $ sudo a2ensite example.com.conf
重启apache: $ sudo service apache2 restart
答案 1 :(得分:0)
因此,在创建一个新实例之后,我能够设置多个vhost。它们都在工作。问题一定是let的加密证书。我将备份我的配置并尝试让我们对此实例进行加密。我会在这篇文章中报告我的发现。谢谢大家对此的帮助。