NGINX缓存错误:与/etc/nginx/nginx.conf中已声明的大小为0的冲突

前端之家收集整理的这篇文章主要介绍了NGINX缓存错误:与/etc/nginx/nginx.conf中已声明的大小为0的冲突前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我目前用于drupal配置的Nginx会出现以下错误.不知何故,我无法启用Nginx缓存.试过不同的配置,但加班我得到同样的错误.有人可以帮忙吗?

Nginx: [emerg] the size 5242880 of shared memory zone "MYAPP" conflicts with already declared size 0 in /etc/Nginx/Nginx.conf:51
Nginx: configuration file /etc/Nginx/Nginx.conf test Failed

我的Nginx.conf

user    Nginx;
worker_processes    auto;
http {  include /etc/Nginx/conf.d/*.conf;
include /etc/Nginx/mime.types;
fastcgi_cache_path /var/cache/Nginx levels=1:2 keys_zone=MYAPP:5M max_size=256M inactive=2h;
fastcgi_cache_key “$scheme$request_method$host$request_uri”;
add_header X-Cache $upstream_cache_status;

## Set a cache_uid variable for authenticated users.
map $http_cookie $cache_uid {
    default nil; # hommage to Lisp :)
    ~SESS[[:alnum:]]+=(?

default.conf

server {
listen  80 default_server;
server_name abc.com;
root /srv/www/abc; ## <== Your only path reference.

#Cache everything by default
set $no_cache 0;
#Don’t cache POST requests
if ($request_method = POST)
{
set $no_cache 1;
}
#Don’t cache if the URL contains a query string
if ($query_string != “”)
{    set $no_cache 1;
}
#Don’t cache the following URLs
if ($request_uri ~* “/(administrator/|login.PHP)”)
{
set $no_cache 1;
}
#Don’t cache if there is a cookie called PHPSESSID
if ($http_cookie = “PHPSESSID”)
{
set $no_cache 1;
}

        location ~ \.PHP${
fastcgi_split_path_info ^(.+\.PHP)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_intercept_errors on;
fastcgi_pass   unix:/var/run/PHP-fpm/rldb.sock;
fastcgi_read_timeout 600;
fastcgi_cache MYAPP;
fastcgi_cache_valid 200 301 30s;
fastcgi_cache_bypass $no_cache;
fastcgi_no_cache $no_cache;
fastcgi_param HTTPS on;
fastcgi_buffer_size 256k;
fastcgi_buffers 256 32k;
fastcgi_connect_timeout 600;
fastcgi_send_timeout 600;

# Set cache key to include identifying components
fastcgi_cache_valid 302     1m;
fastcgi_cache_valid 404     1s;
fastcgi_cache_min_uses 1;
fastcgi_cache_use_stale error timeout invalid_header updating http_500;
fastcgi_ignore_headers Cache-Control Expires;
fastcgi_pass_header Set-Cookie;
fastcgi_pass_header Cookie;

## Add a cache miss/hit status header.
add_header X-Micro-Cache $upstream_cache_status;

## To avoid any interaction with the cache control headers we expire
## everything on this location immediately.
expires epoch;

## Cache locking mechanism for protecting the backend of too many
## simultaneous requests.
fastcgi_cache_lock on;
}
最佳答案
把include包括在/etc/Nginx/conf.d/*.conf中;缓存声明之后,而不是之前.

猜你在找的Nginx相关文章