基于WordPress的网站已在Amazon AWS AMI实例上开发。我们将该网站称为http://example.com
。为了测试对站点的更改,从Amazon AWS EC2控制面板,我停止了正在运行的实例,创建了它的映像,然后使用该映像启动了一个新实例。我为clone.example.com
创建了一个DNS记录,并将其指向克隆的实例。
克隆实例启动后,我执行了以下操作:
clone.example.com
创建了新的LetsEncrypt证书,并相应地更新了/etc/httpd/conf.d/ssl.conf
。http{s}://example.com
的所有实例更改为http{s}://clone.example.com
/var/www/html
中搜索了字符串example.com
中的所有文件,但未找到任何重要的文件然后我能够访问克隆的站点,安全证书有效,但该站点与原始站点不同。不同的,某些颜色,布局等是不一样的。
问题中的WordPress网站使用了各种插件,包括:
您能否建议我可以尝试让克隆网站的行为与原始网站一样?谢谢!
答案 0 :(得分:1)
我挖了进去并且很难解决这个问题 - 我将 void Replace(char* s,char* w1, char* w2)
{
int lisw = 0; //lisw = letters in single word
bool found =false;
for (int i=0;s[i]!='\0' && found!=true;i++) //Replaced || with &&.
{
lisw=0;
for (int j=i;s[j]!=' '&& s[j]!='\0';j++)//added: && s[j]!='\0' so the loop terminates because otherwise it kept finding "spaces" since the character array was of a larger size to accommodate any sentence.
{
lisw++;
}
found=true;
int k=0;
for (int j=i;j<lisw+i;j++) //loop goes until lisw+i instead of lisw
{
if (s[j]!=w1[k])
{
found=false;
}
k++;
}
k=0;
if (found==true)
{
for (int j=i;j<lisw+i;j++)//same as above.
{
s[j]=w2[k];
k++;
}
}
i=i+lisw;
}
}
的每个实例更改为https://example.com
,直到找到破坏网站的那个实例。
问题出现在表https://clone.example.com
中(并不奇怪),导致问题的条目是wp_options
。这是一个开发人员的懒惰案例。部分 - 而不是做正确的事情,即创建一个表来存储选项;他们使用了一个长串,每个部分由其长度分隔。因此,更改URL会导致字符串解析中断。
答案 1 :(得分:0)
我记得在几个月前克隆wordpress网站时遇到了与CSS类似的问题。但是,这不是在AWS上完成的,而是在另一个托管提供商上完成的发生的事情是我克隆网站上的page-id
是新的,与之前使用的不同。使用新的page-id
更新到现有styles.css后,问题得以解决。
这不是答案。我想留下它作为评论,但缺乏声誉。