如果您使用的 Nginx 服务器不支持 .htaccess 规则, Xilifox Image Optimizer 插件需要额外的 Nginx 服务器配置才能正常工作.
-
步 2.#
启动与您网站的 SSH 连接 或将此说明转发给您的服务器管理员.
-
步 3.#
在其中一个路径中找到配置文件 (请记住选择您的域使用的配置文件):
/etc/nginx/sites-available/或者/etc/nginx/sites-enabled//etc/nginx/conf.d/
-
步 4.#
将此代码添加到您的域使用的配置文件中:
# BEGIN XIO
set $ext_avif ".avif";
if ($http_accept !~* "image/avif") {
set $ext_avif "";
}
set $ext_webp ".webp";
if ($http_accept !~* "image/webp") {
set $ext_webp "";
}
location ~* ^/wp-content/(?<path>.+).(?<ext>jpe?g|png|gif|webp)$ {
add_header Vary Accept;
add_header Cache-Control "private";
expires 365d;
try_files
/wp-content/uploads-xio/$path.$ext$ext_avif
/wp-content/uploads-xio/$path.$ext$ext_webp
$uri =404;
}
# END XIO请记住:
- 将这些规则添加到
server { ... }堵塞 - 在其他规则之前添加这些规则
location { ... }指令 - 在所有规则之前添加这些规则
include指令中的server { ... }堵塞 (特别是在包含 staticfiles.conf 文件之前, 如果存在的话)
以下是正确添加规则的示例 (这是 Nginx 配置示例, 但在大多数情况下看起来很相似):

- 将这些规则添加到
-
步 5.#
检查您的域的配置文件中是否有类似的规则 (位置指令中的扩展列表可能会有所不同, 所以寻找相似之处):
location ~* ^.+.(css|js|jpg|jpeg|png|gif|webp|ico|eot|otf|woff|woff2|ttf)$ {
expires max;
...或者
location ~* ^.+.(css|js|jpe?g|png|gif|webp|ico|eot|otf|woff|woff2|ttf)$ {
expires 1M;
try_files $uri @proxy;
...取决于配置, 如果配置分为多个文件,这些规则可能位于不同的配置文件中.
如果你发现这样的规则, 请从位置指令中删除以下格式:
jpg和jpeg或者jpe?gpnggifwebp
这是更改之前的示例位置指令的样子:

这是相同指令更改后的样子:

-
步 6.#
添加对所需 MIME 类型的支持, 如果不支持. 要做到这一点, 编辑配置文件:
/etc/nginx/mime.types并添加此代码 (将这些行添加到
types { ... }堵塞):image/webp webp;
image/avif avif; -
步 7.#
使用命令重新启动Nginx服务器:
systemctl restart nginx -
步 8.#
就这样! 我们的插件就可以正常工作了.
