各位堆垛工,大家好,
我必须让 wordpress 在自托管 nginx 环境中运行。
或多或少完全使用建议的配置NGINX wordpress 文档。
server {
listen 443 ssl;
server_name _;
ssl_certificate /var/lib/nginx/PKI/www/server/cert.pem;
ssl_certificate_key /var/lib/nginx/PKI/www/server/key.pem;
root /var/lib/nginx/www/wordpress;
index index.php;
location / {
try_files $uri uri/ /index.php?$args;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_intercept_errors on;
fastcgi_pass php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
}
}
除样式外,一切基本按预期运行。网站上似乎没有应用任何样式(也适用于管理员登录/快速启动向导)。
在管理仪表板内部,一切看起来都很好。
NGINX 正在正确提供 CSS 文件。
答案1
我的 nginx 配置没有包含 mime.types 默认值。
这似乎影响了 nginx 的“Content-Type”响应标头,导致它变成“text/plain”而不是“text/css”...
...这很不幸,因为没有一个 wordpress 模板在请求中指定内容类型,例如:
<link rel='stylesheet' id='wp-block-library-css' href='https://censored.net/wp-includes/css/dist/block-library/style.css?ver=5.8' media='all' />
应该看起来像这样,但是哦,好吧
<link rel="styleseeht" type="text/css" ...>