有时,您可能需要将网站置于维护模式以进行升级。 这将使您的网站暂时无法公开访问。 您不希望在后台运行重要更新时弹出错误,对吗?
有几种方法可以使网站进入维护模式,技术细节可能因此而不同。 如果您使用的是WordPress,则可以通过以下三种方法将网站置于维护模式。
使用.htaccess
如果使用的是Apache服务器,则可以使用.htaccess
来控制对服务器内目录的访问,并发送服务器状态的响应代码。
要将网站置于维护模式,可以使用503状态码 ,它指示服务器暂时不可用。
但是,在以.htaccess指定任何内容之前,我们需要创建.html
或.php
格式的新文件,并在该文件中添加一条消息,例如
设置页面样式。 接下来,在您的服务器中打开.htaccess文件,并添加以下内容:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{REQUEST_URI} !/maintenance.html$ [NC]
RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif) [NC]
RewriteRule .* /maintenance.html [R=503,L]
</IfModule>
这会将服务器状态代码设置为503 ,同时还将访问者重定向到维护页面。 您可以使用以下行RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
设置IP地址,以便仍然可以访问您的网站。
WordPress内置维护页面
更新WordPress,插件或主题时,您可以创建一个名为.maintenance
的文件, .maintenance
显示
暂时无法进行定期维护。 请稍后再回来查看。
该过程完成后,将自动删除该文件–如果该过程失败,则该文件可能会卡在您的服务器中,因此您必须手动将其删除。
问题在于.maintenance
是不可定制的,因为它是动态生成的。
因此,如果您的重点是网站的整体外观,则可以创建一个名为maintenance.php的文件,可以使用CSS对其进行自定义,然后将其放在wp-content
文件夹中。 这样,下次您更新WordPress或插件时,WordPress将使用此文件中的内容。
像这样,该功能在wp-includes/load.php
。
if ( file_exists( WP_CONTENT_DIR . '/maintenance.php' ) ) {
require_once( WP_CONTENT_DIR . '/maintenance.php' );
die();
}
使用插件
有几个WordPress插件可用来帮助您将网站置于维护模式,但我个人最喜欢的是Michael Wohrer的Maintenance Mode插件。 尽管此插件至今尚未更新约2年,但仍可以正常使用。
使用维护模式插件,您只需单击几下即可激活或停用维护模式 。 您还可以指定网站将处于维护模式的时间。
另外,此插件附带一个默认主题模板,当激活维护模式时将显示该模板。 您还可以通过创建503.php文件并将其上载到主题目录来使用自己的主题。 只需转到维护模式设置页面,然后选择您创建的503.php文件。
这是一个示例页面 ,我在其中使用了此插件以及503.php页面模板。
结论
希望本教程对帮助您更有效地运行WordPress网站有用。 要进一步阅读该主题,可以转到以下站点。
- 重定向到维护页面以进行站点更新 — PerishablePress
- 函数参考:wp维护 — WordPress Codex