워드프레스 Nginx pixel 사이즈 늘리기2560 pixels -> more

최근에 워드프레스 블로그에 이미지를 업로드하던 중, 이미지 픽셀 초과로 인해 업로드가 실패하는 문제가 발생했습니다. 해당 오류 메시지는 다음과 같았습니다.

[error]

'Post-processing of the image failed likely because the server is busy or does not have enough resources. Uploading a smaller image may help. Suggested maximum size is 2500 pixels.'

이 문제를 해결하기 위해선 서버의 nginx 설정을 수정해야 했습니다. 여기서는 그 해결 과정과 함께 각 설정값의 의미를 자세히 살펴보겠습니다.

1. 문제 원인

이미지 업로드에 실패한 이유는 주로 이미지의 크기가 서버가 처리할 수 있는 픽셀 수를 초과했기 때문입니다. 따라서 서버 리소스를 효과적으로 활용하기 위해 몇 가지 설정을 변경해야 했습니다.

2. 해결 과정

먼저, nginx의 설정 파일을 열어야 합니다.

nginx conf 파일 열기

vi /etc/nginx/nginx.comf

그 후, 아래의 설정값들을 추가하거나 수정합니다.

client_max_body_size 128m;
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

conf파일 예시 (example)

  • <http { > 안의 주석처리 된 내용을 풀어주거나 추가해준다.
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
        worker_connections 768;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        types_hash_max_size 2048;
        client_max_body_size 128m;
        fastcgi_buffers 8 16k;
        fastcgi_buffer_size 32k;
        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

3. 설정값의 의미

  • client_max_body_size: 클라이언트가 업로드할 수 있는 최대 바디 크기를 설정합니다. 여기서는 128m로 설정하여 더 큰 이미지도 처리할 수 있도록 했습니다.
  • fastcgi_buffers fastcgi_buffer_size: FastCGI 프로세스에 할당되는 버퍼의 크기를 설정합니다. 이미지 처리에 필요한 메모리를 효과적으로 할당하기 위한 조치입니다.
  • fastcgi_connect_timeout, fastcgi_send_timeout, fastcgi_read_timeout: FastCGI 프로세스와의 연결, 전송, 읽기 시간을 각각 설정합니다. 이미지 처리에 시간이 걸리는 경우를 대비하여 타임아웃 값을 적절히 조절합니다.

이 문제를 해결하는 데 있어 사용자들은 업로드할 이미지의 픽셀 크기에 주의해야 합니다. 서버가 처리할 수 있는 최대 크기를 고려하여 이미지를 축소하면 원활한 업로드가 가능합니다. 또한, 특정 이미지 편집 도구를 사용하여 픽셀 크기를 확인하고 조절하는 것이 도움이 됩니다.

이제 설정값을 수정하고 nginx를 재시작하면 이미지 업로드 문제가 해결될 것입니다.

nginx 재시작

sudo nginx -t
sudo service nginx restart

이렇게 설정을 변경하면 서버가 더 효율적으로 이미지를 처리할 수 있으며, 사용자들은 더 큰 이미지도 업로드할 수 있게 됩니다. 문제가 계속되면 해당 설정값을 조정하여 적절한 크기로 조절해보세요.

Leave a Comment

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다