是否有可能在另一个域上托管wp内容,以便所有上载和图像都可以从那里加载?如果是这样的话,我该如何配置wordpress来实现这一点,最好不要使用第三方插件?
在其他域上托管wp-content,很像CDN
在里面WordPress Dashboard > Settings > Media 并在“文件的完整URL路径”字段中填入您的其他域。请参见下面的屏幕截图:
EDIT: 我认为这是显而易见的,但事实并非如此。以下是您真正需要做的:
您应该将域映射到指向:
- public_html 目录,如果它也是WordPress安装的根目录。
- public_html/subdirectory/ 目录,如果您的WordPress安装在它自己的子目录中。
如果在“将上载存储到文件夹”中设置了自定义路径,则域应指向自定义上载目录上方的目录。
例如,让我们考虑以下设置:
Store uploads in this folder:
media/uploads/
(暗示public_html/media/uploads/ 目录——正如您所猜测的,它位于WordPress安装目录之外)Full URL path to files:
http://newdomain.com
那么,你应该确保,http://newdomain.com 指向public_html/media/uploads/ 目录
现在,在上面屏幕截图所示的字段中添加域(或子域)。简单地添加域,而不将其映射到您的WP安装,将无法完成这项工作。
至于在不同的服务器和域上托管您的图像,您没有比W3 Total Cache <;--是的,WordPress的缓存插件。
My second aswer:
要使用其他服务器,使用您的子域(比如媒体)并不容易。领域com这并不难,一旦我用它在我的价格比较网站与WP做。加快加载速度的主要方法是使用不同的域,而子域也很好,因为浏览器也会为它们打开新的连接。因此,请使用本教程:http://www.computingunleashed.com/host-images-in-sub-domain.html
服务器将是相同的,bat浏览器将创建新连接以加载图像,因此加载时间将更短(如果服务器不慢)。
将此粘贴到。HTACCESS文件:
Header unset ETag
FileETag None
# BEGIN Expire headers
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 35 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Expire headers
# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
<filesMatch "\\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "public"
</filesMatch>
<filesMatch "\\.(css)$">
Header set Cache-Control "public"
</filesMatch>
<filesMatch "\\.(js)$">
Header set Cache-Control "private"
</filesMatch>
<filesMatch "\\.(x?html?|php)$">
Header set Cache-Control "private, must-revalidate"
</filesMatch>
</ifModule>
# END Cache-Control Headers
这将告诉浏览器将所有javascript、图像、css缓存到计算机,所以图像在更改之前不会从您处下载。您可以使用最佳浏览器-chrome在时间线中使用ctrl+shift+j进行测试您可以实际看到下载图像所需的时间,缓存的图像通常需要25 ms(因为服务器首先必须说明:文件未更改,所以请使用本地副本:))