- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

VK приобрела 70% в структуре компании-разработчика red_mad_robot
Которая участвовала в создании RuStore
Оксана Мамчуева

Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Настроил прокисрование бэкэнда через upstream, и появилась странная проблема при отправке "большого" поста из формы (в основном много стрингов) или при аплоаде файлов больших 200кб, происходит большая задержка с последующим вываливанием 504 ошибки, в базе появляеться апдейт но с битой кодировкой и текстом(не полный), при меньших размерах текста или файлов проблем не наблюдаеться, если upstream исключить и вместо проксирование поставить просто fastcgi то проблема пропадает
upstream backend {
server site.com:8080;
}
server {
listen 80;
server_name site.com *.site.com;
access_log /logs/nginx/access.log;
error_log /logs/nginx/error.log;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
charset windows-1251;
client_max_body_size 100m;
root /home/develop/www/site.com;
location = / {
proxy_pass http://backend;
break;
}
location / {
if (!-e $request_filename) {
proxy_pass http://backend;
break;
}
}
location ~* \.(php)$ {
proxy_pass http://backend;
break;
}
}
server {
listen site.com:8080;
server_name site.com;
set $charset "windows-1251";
index index.php;
access_log /logs/nginx/access_backend.log;
error_log /logs/nginx/error_backend.log;
root /home/develop/www/site.com;
error_page 404 /index.php;
client_max_body_size 100m;
location / {
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php last;
}
}
location ~* \.(php)$ {
fastcgi_pass unix:/tmp/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/develop/www/site.com$fastcgi_script_name;
include fastcgi_params;
fastcgi_read_timeout 60s;
}
}
пример тестовой конфигурации, искал решения на форуме (гугл), что то похожее обсуждали в топике /ru/forum/553071, но мне не помогло
лог ошибок нужен, в момент ошибки.
лог ошибок нужен, в момент ошибки.
Ошибка в логе бэкэнда
[error] 73414#0: *83 upstream timed out (60: Operation timed out) while sending request to upstream, client: 46.4.99.252, server: site.com, request: "POST /main/pages/submit/3828 HTTP/1.0", upstream: "fastcgi://unix:/tmp/php5-fpm.sock:"
Измените time out для ожидания ответа от скрипта - fastcgi_read_timeout 60s хотя бы на
fastcgi_read_timeout 120s;
Измените time out для ожидания ответа от скрипта - fastcgi_read_timeout 60s хотя бы на
fastcgi_read_timeout 120s;
Это тестовые значения, я пробовал и такие, если настроить не через проксирование, а через fastcgi напрямую то выполняеться все очень быстро за секунду-две
---------- Добавлено 28.04.2012 в 14:57 ----------
пробовал более детальные настройки прокси
proxy_redirect off;
proxy_buffering off;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 200;
proxy_read_timeout 200;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
не как не повлияло
nginx version: nginx/1.2.0
configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt='-I /usr/local/include' --with-ld-opt='-L /usr/local/lib' --conf-path=/usr/local/etc/nginx/nginx.conf --sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid --error-log-path=/var/log/nginx-error.log --user=www --group=www --http-client-body-temp-path=/var/tmp/nginx/client_body_temp --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp --http-proxy-temp-path=/var/tmp/nginx/proxy_temp --http-scgi-temp-path=/var/tmp/nginx/scgi_temp --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi_temp --http-log-path=/var/log/nginx-access.log --with-http_stub_status_module --with-pcre
На вскидку proxy_connect_timeout не может быть больше 75 секунд
И proxy_read_timeout на максимально любое время, которое устроит.
Для аплоада больших файлов используйте модуль nginx-upload-module
Для аплоада больших файлов используйте модуль nginx-upload-module
Изображения до 1 мегабайта можно считать большими файлами
Изображения до 1 мегабайта можно считать большими файлами
По мне так нет, но суть в том, что модуль не использует php процесс. И еще посмотрите php.ini
на время выполнения php max_execution_time, может быть сам скрипт по тамауту убивается, до того, как все переварится сервером.
И еще посмотрите php.ini
на время выполнения php max_execution_time, может быть сам скрипт по тамауту убивается, до того, как все переварится сервером.
Это не имеет значение, так как при более простой схеме, которую я описывал выше, точно такой же запрос выполняеться без задержек и очень быстро,
в базу попадает контент только он не полный, такое ощущение, что прокси отдает не всё и не может дождаться ответа от апстрима, пока не сработает таймаут,
хотя я заметил закономерность, что обновления не попадают пока не сработает прокси таймаут