我有一个运行 Ubuntu 的 EC2 实例,在 Apache 上托管一个 Wordpress 网站。我使用 LetsEncrypt 的 CertBot 创建了 SSL 证书,一切运行正常。我还设置了直接 IP 到域名的重定向。现在我决定复制 EC2 实例,以便在将网站推送到生产环境之前在网站的开发副本上测试一些更改。我这样做了,但访问新开发网站的公共 IPV4 地址只会将我重定向到旧的生产网站。我尝试过弄乱.htaccess
并/etc/apache2/sites-available/wordpress.conf
删除任何重定向或指向旧网站的指针,并用开发网站的新正确 IPV4 地址替换它们,但似乎没有任何效果。
在 apache 上创建托管 wordpress 站点的 EC2 实例副本的最佳方法是什么,以便我可以单独处理它并通过其公共 IPV4 正常访问它。我无法“撤消”使其运行的生产站点的配置。我相信这应该比看起来更容易。我怀疑 SSL 证书是造成所有麻烦的原因。
/var/www/html/wordpress/.htaccess
以下是(更改前)的内容
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^w\.x\.y\.z$
RewriteRule ^(.*)$ https://myexampledomain.com/ [L,R=301]
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
我已经更换了我的域名,并将生产 IPV4 替换为 wxyz
以下是/etc/apache2/sites-available/wordpress.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/wordpress
ServerName myexampledomain.com
ServerAlias www.myexampledomain.com
<Directory /var/www/html/wordpress/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine on
RewriteCond %{SERVER_NAME} =myexampledomain.com [OR]
RewriteCond %{SERVER_NAME} =www.myexampledomain.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
再次,我更换了我的域名。
我完全不知道该怎么做。我想提供有关我的 SSL 配置的信息,但我不知道该怎么做。我最希望删除/重做我开发网站上的 SSL,我已经尝试过了,但不知何故,开发网站不断重定向到生产网站,这有点奇怪!