将所有“非PHP”文件放在不同的服务器上

时间:2019-06-21 作者:Junge

我想分开我的。wordpress使用的所有其他文件(图像、脚本等)中的php文件。所以我把它们放在不同的服务器上。

我可以通过简单地将“siteurl”和“home”设置为文件服务器的url,使我的wordpress站点知道这些文件。这对图像来说很好,但破坏了其他一切(就像每个人都期望的那样)

有人知道有更可行的方法吗?

1 个回复
最合适的回答,由SO网友:WraithKenny 整理而成

有两件事:有一些健壮的CDN插件,您应该使用它们,而不是手动执行。如果这是将php与其他文件分离的动机,那么这将处理性能问题。

如果出于个人审美代码组织的原因,您只是想在源代码中分离它们,那么您应该只在自己的代码(私有插件或主题)中尝试这一点,以减少问题的表面面积。

当然不要尝试移动WP核心文件(CDN插件复制到CDN,而不是移动)。而“简单地将“siteurl”和“home”设置为文件服务器的url”也肯定是错误的,正如你所知,lol.WordPress基本上是建立在文件同时存在的假设上的:想想WP中的图像编辑功能;文件需要位于同一位置,php才能对其进行操作。

如果您只处理自己的代码组织,那么可以避免以下问题file_exists() 出现错误(和require 导致致命事件),因为它在错误的服务器上。从那里,您可以围绕wpapi编写包装函数来处理新的url,也可以在您自己的文件夹中对特定文件类型的请求进行重写。

有一个WP重写API可以实现这一点,但主要是了解Apache的重写。

TLDR:我认为您要么使用CDN插件,要么使用WP重写API。

相关推荐

$wpdb selects wrong database

我在另一个WordPress网站的文件夹中创建了一个新的WordPress网站。示例-主站点。com-mainsite。com/第二站点我创建了一个插件,并使用$wpdb 将数据插入数据库,插件将数据插入第一个/父站点的数据库。我使用的代码包括$wpdb 如下所示:$path = $_SERVER[\'DOCUMENT_ROOT\']; include $path . \'/wp-load.php\'; include $path . \'/wp-config.php\'; inc