我是一个经验丰富的网络开发人员,熟悉系统管理,但对WordPress完全陌生。我有一个工作的WP网站(不是我开发的),让我们称之为“www.mysite.com”(虽然这不是实际的域名),它运行在Centos服务器(共享主机)。我试图在运行在Ubuntu VPS上的子域“www.example.com”设置它的副本www2.mysite.com。我已经在这台新机器上安装了Apache和PHP,创建了一个虚拟主机,复制了website目录并将虚拟主机指向它。我将下面几行放在wp-config.php的顶部:
define( 'WP_HOME', 'https://www2.mysite.com' );
define( 'WP_SITEURL', 'https://www2.mysite.com' );
我做了一个原始网站的MySQL数据库转储,替换了所有示例'www.mysite.com'与'www2.mysite.com'(在情况下与绝对主机名的链接)和导入。我也做了同样的搜索和替换整个主题目录。我还清空该高速缓存目录。
所以我现在认为我有一个完整的网站副本,但使用新的子域。主页出现正常,但当我点击任何链接,如'https://www2.mysite.com/contact-us',我得到一个常规的Apache错误,告诉我该页面无法在服务器上找到,而不是PHP错误。这就好像PHP甚至没有参与。
我可以访问管理区(https://www2.mysite.com/wp-admin/),如果这是相关的(虽然不得不禁用WordFence插件这样做)。
那么,在这个迁移过程中,我可能忽略了什么呢?
2条答案
按热度按时间vjrehmav1#
这听起来像是一个固定链接的问题,我也经历过。
导航到Wordpress后端的
settings -> permalinks
,选择您喜欢的结构并保存。希望这能帮上忙。
kqlmhetl2#
正如user18371825所建议的,这是一个永久链接问题,罪魁祸首是apache2.conf中的顶级Apache设置。在以下代码块中,
AllowOverride None
需要更改为AllowOverride All
: