socket uploader

11 отговора 358 прегледа
#1

socket uploader

Търся upload скрипт по сокет.
Аз намерих един, но ми дава грешка:

Warning: file(E:\\images\\abbr1.gif) [function.file]: failed to create stream: Permission denied..... и т.н.


Сокета е с цел да заобиколя 30 секундния таймаут на сървъра. Ако знаете и друг начин, моля кажете. Мерси предварително.


Dont hate the player, hate the game
Отговор
в отговор на Flashman #2

Re: socket uploader

set_time_limit(0);
виж - php.net/set-time-limit за повече инфо
а колкото до неработещия скрипт оправи permission-a на 777

Break The UnBreakable
Отговор
в отговор на nupaT #3

Re: socket uploader

в safe_mode set_time_limit не ебава

-----------------------
гърбавия, ковчег ще го изправи
Отговор
в отговор на Flashman #4

Re: socket uploader

бе, много ми е интересно, как РНР скрипт който не може да промени време за изпълнение ще заобиколи това ограничение с някакви функции отвътре? (да не говориме за това, че освен ограничение на РНР има и на НТТР деймон)

-----------------------
гърбавия, ковчег ще го изправи
Отговор
в отговор на nupaT #5

Re: socket uploader

> а колкото до неработещия скрипт оправи permission-a на 777

Не трябва да е 777, 775 му стига, още повече, че ако Apache-a работи под suexec ще му връща Internal Server Error.

Отговор
в отговор на Lupi #6

Re: socket uploader

Лупиииии, Пиратееееееееееееее

какво 777, 775 и такива бози бе момчета

не виждате ли че целата врътка е на WinBoze :-))))

root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
Отговор
в отговор на Bълk #7

Re: socket uploader

Момчета, мерси за отговорите. Значи, това за permission-ите 777 и т.н. беше първото нещо, за което и аз се сетих, но не помага. Пак си плюе грешката.

----- цитат: -----------------------------------
бе, много ми е интересно, как РНР скрипт който не може да промени време за изпълнение ще заобиколи това ограничение с някакви функции отвътре? (да не говориме за това, че освен ограничение на РНР има и на НТТР деймон)

При уплоад с copy на по-големи файлове ми връща:
Fatal error: Maximum execution time of 30 seconds exceeded in D:\webspace\**********.com\wwwroot\**********.php on line 2
Демек, то тръгва да го качва, но понеже файла е големичък и са му нужни повече от 30 сек., забива!

В няколко форума прочетох, че със сокет тоя проблем се премахва. За това си търся и уплоудърче със сокет. Ако знаете и някакъв друг начин, моля кажете. Мерси.


Dont hate the player, hate the game
Отговор
в отговор на Flashman #8

Re: socket uploader

кажи точно какво правиш
за ъплоад-а не ти се мери време на сървъра, а ако ъплоадваш към друг хост си е друга работа ....
виж си макс_ъплоад_фаил_сизе и макс_пост_дата в пхп.ини -> от там произтича понякога идентичния проблем.

Ако копираш много голям фаил от локалния на локалния диск, също мисля не ти се мери времето докато вървят файловите операции, но за опимизация ползвай move_uploaded_file или rename.

Я дай малко сорс да прочетем аджеба за какво става дума.

root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
Отговор
в отговор на ro6avia #9

Re: socket uploader

П.С.
ако се справим добре ще получим ли по някой шпиндел на пормоция ?

root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
Отговор
в отговор на ro6avia #10

Re: socket uploader

къФ шпиндел? кФа промоция? аз май пак изпускам нещо.

-----------------------
гърбавия, ковчег ще го изправи
Отговор
в отговор на ro6avia #11

Re: socket uploader

Как бидех хванат??? Ша да видим тая работа със шпинделите.

Аз нямам достъп до .ини файла. Ползвам само хост.

Ето ти и малко сорс:

$path = "../pictures";
echo("Òåêóù íîìåð: $numb_1
");
if($file){

echo("Êà÷âàíå íà êàðòèíêà çà åòèêåò: $file_name
");
echo("Ðàçìåð íà ôàéëà: $file_size bytes
");

if(copy($file, "$path/gp" . $numb_1 . ".jpg")){

echo("Êàðòèíêàòà çà åòèêåò å êà÷åíà óñïåøíî!
");
}else{
echo("Ãðåøêà, êàðòèíêàòà çà åòèêåò íå å êà÷åíà!
");
}

unlink($file);
} else {
echo("&#204;&#238;&#235;&#255;, &#239;&#238;&#241;&#238;&#247;&#229;&#242;&#229; &#234;&#224;&#240;&#242;&#232;&#237;&#234;&#224; &#231;&#224; &#243;&#239;&#235;&#238;&#224;&#228; &#237;&#224;: <b>&#202;&#224;&#240;&#242;&#232;&#237;&#234;&#224; &#231;&#224; &#229;&#242;&#232;&#234;&#229;&#242;</b>!
");
}


Най-обикновено copy. Скрипта за attach на файлове към уеб мейл клиенти на какъв принцип е? Там и 20 МВ файл да качвам пак не ми казва таймаут. Вие като сте правили уплоудер (предполагам сте правили) на какъв принцип сте го правили?

П.С. Усетих се как съм хванат - картинката от сигнатурата! За шпиндела се обръщай на мейловете от страницата контакт. Лека вечер.


Dont hate the player, hate the game
Отговор
в отговор на Flashman #12

Re: socket uploader

както ти предложих по-горе, ползвай
move_uploaded_file или rename, вместо copy + unlink
1. Намаляваш сорса
2. Работят по-бързо -> едното само сменя пътя във FAT-а а другото копира 1:1 файла.

Може би проблема ти идва от
max_input_time
This sets the maximum time in seconds a script is allowed to receive input data, like POST, GET and file uploads. The default setting is 60.

Опитай се да го пребориш по някакъв начин, я с ini_set(май не става), я с нещо подобно в web server конфигурацията

root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
Отговор