Tôi liên tục gặp phải 504 lỗi cổng khi tập lệnh php của tôi cần chạy lâu hơn 60 giây.504 Cổng truyền thông thời gian chờ ra khỏi đền
Tôi đang ở trên ngôi đền truyền thông trên một máy chủ chuyên dụng. Tôi đã liên lạc với truyền thông đền thờ và họ đã được hữu ích nhưng không ai trong số suggesion của họ dường như làm việc cho tôi tôi đã nói để chỉnh sửa tập tin này.
/etc/httpd/conf.d/fcgid.conf
mà tôi phải bên dưới
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule mod_fcgid.c>
<IfModule !mod_fastcgi.c>
AddHandler fcgid-script fcg fcgi fpl
</IfModule>
FcgidIPCDir /var/run/mod_fcgid/sock
FcgidProcessTableFile /var/run/mod_fcgid/fcgid_shm
FcgidIdleTimeout 300
FcgidMaxRequestLen 1073741824
FcgidProcessLifeTime 10000
FcgidMaxProcesses 64
FcgidMaxProcessesPerClass 15
FcgidMinProcessesPerClass 0
FcgidConnectTimeout 600
FcgidIOTimeout 600
FcgidInitialEnv RAILS_ENV production
FcgidIdleScanInterval 600
</IfModule>
vì vậy tôi đã cố gắng tối đa mọi thứ càng nhiều như tôi có thể, để kiểm tra điều này tôi chỉ cần chạy hàm dưới đây.
function test504(){
@set_time_limit(0);
sleep(60);
echo "true";
}
Ngủ sẽ làm việc trên bất kỳ giá trị dưới 60 giây trở về đúng nhưng trên 60 tôi nhận được 504 lỗi cổng.
phpinfo(); kết quả đầu ra
max_execution_time 600
max_input_time 180
Tôi đã xem một số bài đăng về cách tăng fastcgi_connect_timeout này nhưng không biết tìm ở đâu trên ngôi đền truyền thông.
bất cứ ai giúp đỡ Can nhờ
CẬP NHẬT VẪN CANT FIX NÀY
sau khi trò chuyện với sự hỗ trợ tôi đã nói với tôi cần phải chỉnh sửa nginx.conf? và đã được chuyển đến bài đăng này http://blog.secaserver.com/2011/10/nginx-gateway-time-out/
không thể xử lý bất kỳ giá trị nào trong lưu trữ của tôi. client_header_timeout client_body_timeout send_timeout fastcgi_read_timeout
tập tin nginx.conf của tôi trông như thế này
#error_log /var/log/nginx/error.log info;
#pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 120;
#tcp_nodelay on;
#gzip on;
#gzip_disable "MSIE [1-6]\.(?!.*SV1)";
server_tokens off;
include /etc/nginx/conf.d/*.conf;
}
này được lái xe cho tôi điên bất cứ đề nghị ???
CẬP NHẬT tôi đã quản lý để sắp xếp điều này cuối cùng sau khi rất nhiều cơn đau đầu đã thêm một bài đăng trên blog về cách tôi đã khắc phục sự cố này tại đây. http://devsforrest.com/116/boost-settings-on-media-temple-for-maximum-settings
Hy vọng điều này sẽ giúp người
Tôi nghĩ đây là cài đặt mới vì tôi chưa bao giờ gặp sự cố với máy chủ cũ nhưng đã bật máy chủ mới và chạy vào đây. Bài đăng của bạn thực sự đã giúp ích rất nhiều. Ứng dụng của tôi đang chạy ở chế độ Mô-đun Apache và điều này vẫn khắc phục được sự cố. Thực sự hữu ích! – David
Hey @ user1503606 - cập nhật lần cuối của bạn hoạt động! Đăng nó làm câu trả lời của bạn và nhận được tín dụng cho việc tìm kiếm giải pháp. – squarecandy
Tôi khuyên bạn nên cấu trúc lại ứng dụng của mình để xóa nhu cầu chạy tập lệnh trong hơn 200 mili giây. Bạn có thể cần phải di chuyển một số logic nặng vào nền. Sử dụng bất kỳ công nghệ nào sau đây để giúp bạn với điều đó: AJAX, Hàng đợi thư, memcache, các tệp cờ. –