首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >EC2重新启动后,AWS新闻网站缺少内容

EC2重新启动后,AWS新闻网站缺少内容
EN

Stack Overflow用户
提问于 2019-02-22 04:18:37
回答 2查看 871关注 0票数 0

我在EC2上部署了wordpress站点,并使用RDS mysql连接它。只要EC2和RDS在运行,在第一次运行时,一切都运行得很好。只要我停止ec2和rds,并尝试第二天早上或直接重启它,我就可以访问word press网站,但内容布局不正确,图像也丢失。我在互联网上搜索了一下,发现推荐使用弹性ip的相关问题很密切,我也使用了弹性ip,并将其分配给了EC2,但WP的内容仍然缺失。任何建议

EN

回答 2

Stack Overflow用户

发布于 2019-02-22 04:58:23

Wordpress会在其配置文件和数据库中嵌入您的网站URL,如果您没有稳定的DNS名称,则会嵌入IP地址。

在初始安装之后,对IP地址或DNS名称的任何更改都会导致您看到的行为。

此页面文档包含修复该问题的步骤。https://codex.wordpress.org/Changing_The_Site_URL

下面的脚本直接更改Wordpress数据库中的IP地址。请务必更改DB_NAMEDB_USERDB_PASSWORD

代码语言:javascript
复制
#!/bin/bash

DB_HOSTNAME=`grep DB_HOST /var/www/html/wordpress/wp-config.php | cut -d ',' -f2 | awk -F "'"  '{ print $2 }'`
WP_URL="http://`curl http://169.254.169.254/latest/meta-data/public-hostname/`/wordpress"
DB_USER=wordpress
DB_PWD=password
DB_NAME=wordpress
mysql -u $DB_USER --password=$DB_PWD -h $DB_HOSTNAME $DB_NAME -e "UPDATE wp_options SET option_value='$WP_URL' WHERE option_name='siteurl' OR option_name='home'"

您可以在引导时自动运行此脚本,以将DB调整为EC2实例的新IP地址。

请注意,长期解决方案是不同的:我建议使用两个EC2实例实现可用性和一个负载均衡器。负载均衡器将有一个稳定的DNS名称(您可以在域DNS中使用CNAME记录作为该名称的别名)。Wordpress数据库将只包含CNAME名称。

有关在亚马逊网络服务上部署Wordpress的最佳实践,请参阅此白皮书:https://aws.amazon.com/blogs/architecture/wordpress-best-practices-on-aws/

票数 0
EN

Stack Overflow用户

发布于 2020-05-29 11:24:34

我也遇到了同样的问题,当我在亚马逊ec2实例上安装wordpress时,我创建了一些帖子和页面,一段时间后我停止了ec2实例。当启动ec2实例时,wordpress站点不显示内容。

所以我找到的解决方案是,wordpress需要静态IP地址,所以我创建了新的ec2,为ec2实例分配了弹性IP地址,并创建了wordpress博客,它对我来说工作得很好,甚至多次重启ec2。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54815567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档