LINUX.ORG.RU

Сообщения isamitakata

 

Nginx, не скачивается файл с расширением php

Приветствую! Есть проблема, гугл не помог к сожалению.

Отдаю файлы на скачивание через nginx используя заголовок X-Accel-Redirect. Все прекрасно, кроме одного, не скаичваются файлы с расширением php. Т.е. формируется ссылка вида http://example.com/file/hash/script.php.

Сам script.php находится в директории ниже корня сайта в папке /var/www/servers/files/{hash}/script.php

Log

open() "/var/www/example.com404" failed (2: No such file or directory), client: 127.0.0.1, server: $domain, request: "GET /file/5YTK9HHsW8WC6u6Y0VuYMYwfrjxtegRx/script.php
 

Конфиг nginx



        location ~* /files {
		 root /var/www/servers;
		 internal;
	}

        location / {
        rewrite ^/file/(.*)/(.*)$ /download.php?link=$1&namefile=$2 last;
        rewrite ^/(.*) /index.php?route=$1 last;
        }

        location ~ \.php$  {
    	try_files $uri $uri/ =404; 
    	fastcgi_split_path_info ^(.+\.php)(/.+)$;
    	fastcgi_pass unix:/var/run/php5-fpm.sock;
    	fastcgi_index index.php;
    	include fastcgi_params;
    	}
        
 

Все остальные файлы скачиваются, php - нет. В логах он пытается найти этот файл Как это можно исправить? Буду очень благодарен за помощь.

 ,

isamitakata
()

Загрузка файла, не работает X-Accel-Redirect

Приветствую!

Появилась проблема с загрузкой файла, уже не пару часов провел в решении проблемы и гугления, так ее и не решил.

И так.

Файлы загружаются на сервер в каталог /var/www/servers/file/{при загрузке файла создается папка - имя папки хеш}/filename.txt

Ссылка на файл имеет вид http://example.com/file/{random_string}/{хеш созданной папки}/filename.txt

Т.е. на обработчик получаем три параметра: random_string, hash_folder, namefile. Проверяем в базе random_string и hash_folder, после отдаем файл на скачивание с помощью заголовка header(«X-Accel-Redirect: {$path}»)

В итоге ничего не получается, все время ошибка 404, в логах пусто.

Локейшн

location /file/ { rewrite /file/(.*)/(.*)/(.*) /downloadDirect.php?link=$1&link2=$2&name=$3 last; }

Пробовал разные варианты и не один не подошел. Указали на secure_link, но для моего примера, когда файлы хранятся ниже директори сайта, так и не смог сделать.

Буду очень благодарен за помощь.

 ,

isamitakata
()

Apache and PHP, Uploaded file

Приветствую! Нужно решить проблему, обращаюсь к вам =)

Есть обычный примитивный скрипт на php загрузки файла, загружаю файл до 15-20мб, все удачно сохраняется, загружаю больше не работает и посылает меня на ошибку internal server error. Ну вроде дело обычно и понятно, знаем что править. Первое что делаю это конечно правлю /etc/php.ini, /var/.../etc/php.ini, ставлю параметры max_execution_time = 3600, max_input_time = 3600, upload_max_filesize = 5100M, memory_limit = 3600M, post_max_size = 5500M

сохраняем...

далее сразу изменяю httpd.conf и ставлю в <DIRECTORY /> LimitRequestBody 5273741824

открываю /etc/httpd/conf.d/fcgid.conf и ставлю значение FcgidMaxRequestLen 5273741824

сохранили и рестарт апача сделали. Опять захожу в скрипт загрузки и пытаюсь отправить файла на сервак, история абсолютно не изменилась, до 20МБ гуд, а больше не грузит.

Что можете подсказать? Заранее благодарю!

isamitakata
()

Cron невыполняет скрипт

Приветствую! Появилась задача поставить планировщик cron в работу сайта. Сразу к делу.

Поставил задание

*/1 * * * * root /usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php

Скрипт простой удаление из базы, проверял через браузер все работает.

Крон не выполняет этот скрипт, по причинам мне не понятным.

Вот лог

Feb  3 15:44:01 test crond[12300]: (root) RELOAD (/var/spool/cron/root)
Feb  3 15:44:01 test CROND[3829]: (root) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:45:01 test CROND[3932]: (root) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:46:01 test CROND[4166]: (root) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:47:01 test CROND[4335]: (root) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:48:01 test CROND[4489]: (root) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:48:48 test crontab[4618]: (root) BEGIN EDIT (root)
Feb  3 15:48:59 test crontab[4618]: (root) REPLACE (root)
Feb  3 15:48:59 test crontab[4618]: (root) END EDIT (root)
Feb  3 15:49:01 test crond[12300]: (root) RELOAD (/var/spool/cron/root)
Feb  3 15:49:01 test CROND[4658]: (root) CMD (root  /usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:50:01 test CROND[4814]: (test) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:50:01 test CROND[4813]: (root) CMD (root  /usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:50:01 test CROND[4816]: (test) CMD (/usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/check_order_bitcoin.php )
Feb  3 15:50:01 test CROND[4815]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Feb  3 15:51:01 test CROND[4923]: (root) CMD (root  /usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:52:01 test CROND[5064]: (root) CMD (root  /usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)
Feb  3 15:53:01 test CROND[5191]: (root) CMD (root  /usr/bin/php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php)

Причем пробывал и такой вариант ставить:

*/1 * * * * php /var/www/vhosts/test.info/httpdocs/cron/delete_files.php

Подскажите пожалуйста что может быть не так, буду очень благодарен.

isamitakata
()

RSS подписка на новые темы