Будет продолжатся... он в памяти продолжит пахать... Так как ignore_user_abort - true, он так и останется там висеть... хотя, если хостер не левый - некоторый таймаут у него будет. Иначе - чот на подобии DoS-а получится, если юзеры крутящие скрипты на подобии твоего навалят. А ведь это идея... Code: <?php set_time_limit(0); ignore_user_abort(true); while(true); ?> Если все нужные функции разрешены - несколько рефрешов и бай-бай .
на сервере 2 IP, на первом сайты второй - просто добавлен как дополнительный в панели isp вопрос - как заставить php делать курл запросы со второго IP?
Есть небольшой вопрос - в php есть встроенные функции типа echo и print, которые можно вызывать так: Code: <?php echo "hello"; echo("hello"); //привычный вызов ?> Возможно ли самому мутить функции, которые принимали аргумент так, как это может echo ? Т.е. без скобок.
Есть php скрипт с продолжительной работой. Управлять его работой можно только при помощи сессий/файлов или есть какие-то более стандартные/принятые способы?
AnGeI файлы - это простой и действенный способ для простого взаимодействия (например старт стоп). Если хочется погорячее - можете гонять данные через сокеты/сигналы/общую память/семафоры. Все стандартные способы пхп поддерживает (в теории). Реализация же чего-то через них в пхп будет весьма увлекательной. Если сделаете через семафоры/общую память - расскажете потом
Вопрос по Mass E-Mailer Здравствуйте, уважаемый форум! Прошу Вашего совета по поводу PHP-скрипта для массовой рассылки e-mail. Есть хостинг с поддержкой PHP, на котором работает только платный GP Mailer, а остальные (проверил штук 25) не хотят. Менял права доступа по всякому и без результата - интерфейс почты есть, а отправка не идет ни на какую почту. Больше всего интересует скрипт Mass E-Mailer или аналог. Может что поправить в них надо, чтобы заработали?
Это POST "кусками" - multipart/form-data. Можно подделать на курле. Вот пример, выдран кусок из моего скрипта одного: PHP: function sendRegistration($email, $pass, $name, $secondname, $about, $cid, $cword) { global $chosen_useragent, $cookie_session; $rn = "\r\n"; $boundary = rand(1176565957000, 1176565957999); $poster = '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[LOGIN]"'.$rn. $rn. $email.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[EMAIL]"'.$rn. $rn. $email.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[PASSWORD]"'.$rn. $rn. $pass.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[CONFIRM_PASSWORD]"'.$rn. $rn. $pass.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[NAME]"'.$rn. $rn. $name.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[LAST_NAME]"'.$rn. $rn. $secondname.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="REGISTER[PERSONAL_NOTES]"'.$rn. $rn. $about.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="UF_POLICYACCEPT"'.$rn. $rn. '1'.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="captcha_word"'.$rn. $rn. $cword.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="captcha_sid"'.$rn. $rn. $cid.$rn. '-----------------------------'.$boundary.$rn. 'Content-Disposition: form-data; name="register_submit_button"'.$rn. $rn. 'Register'.$rn. '-----------------------------'.$boundary.'--'.$rn; $head = array( 'Host: 123.com', 'User-Agent: ' . $chosen_useragent, 'Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5', 'Accept-Language: en-us,en;q=0.5', 'Accept-Encoding: gzip,deflate', 'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7', 'Keep-Alive: 300', 'Connection: keep-alive', 'Referer: http://123.com/user/reg/', 'Cookie: ' . implode('; ', $cookie_session), 'Content-Type: multipart/form-data; boundary=---------------------------' . $boundary, 'Content-Length: ' . strlen($poster) ); $c = curl_init(); curl_setopt($c, CURLOPT_URL, 'http://123.com/user/reg/'); curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($c, CURLOPT_POST, 1); curl_setopt($c, CURLOPT_POSTFIELDS, $poster); curl_setopt($c, CURLOPT_HTTPHEADER, $head); curl_setopt($c, CURLOPT_HEADER, 1); //curl_setopt($c, CURLOPT_NOBODY, 1); curl_setopt($c, CURLOPT_FOLLOWLOCATION, 0); list($firsth, $secondh, $rest) = explode("\r\n\r\n", $result = curl_exec($c)); curl_close($c); return $secondh; }
|qbz| чтобы передавать multipart/form-data курлом - достаточно в CURL_POSTFIELDS подставить массив, а не строку
Тебе это, скорее всего, не нужно, там поидее куки в массиве были и этой командой они добавлялись в шапку. Если куки не нужны / не обязательны - просто удали это место. Если нужны - подставь свои. Ога. Писал именно в таком виде ибо логи со сниффера.
Ну мой скрипт был как-бы бот, то есть он работал с сайтом интерактивно - при авторизации сервер ставит куки (заголовок Set-Cookie: ), из него вынимаем инфорамцию и ставим при последующих обращениях в заголовок Cookie: (только без данных о сроке валидности кук и так далее - это указывает только сервер браузеру, но никак не браузер серверу).
$i=md5(base64_encode(md5(your pass))); Разве такой пароль не неуязвимый ? Почему бы просто не поставить такое на свою CMS ? Даже если получат хеш админа - брутить будут всю жизнь. Или это сильно нагружает сервак и при высокой посещаемости это будет как DDOS ?
Есть скрипт с продолжительной работой, запустил еще вчера, - сегодня в вывода ps -u user получаю Почему время выполнения 00:00:00? PID тот, что и был вчера, значит процесс тот же. Раньше там было реальное время выполнения. Попробовал создать отдельно скрипт с бесконечным циклом - все равно 00:00:00 всегда пишет.
PHP: <?php $ftp_server = "ftp.site.ru"; $ftp_user = "username"; $ftp_pass = "userpass"; $file = 'http://sete2.ru/file.txt'; $remote_file = 'file.txt'; $conn_id = ftp_connect($ftp_server) or die("Не удалось установить соединение с $ftp_server"); if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) { echo "Произведен вход на $ftp_server под именем $ftp_user\n"; @ftp_put($conn_id, $remote_file, $file, FTP_ASCII); } else { echo "Не удалось войти под именем $ftp_user\n"; } // close the connection ftp_close($conn_id); ?> Скрипт лежит на одном сайте. Файл должен загружаться на друго, но этого не происходит. Почему?
SkyLine32, проверьте права ftp-пользователя удаленного сервера на запись и права на чтение файла текущего сервера.
да все гуд, но проблема осталась. у кого может есть рабочий скрипт для скачивания файла с одного сервера на фтп другого?
Есть ссылка на файл, есть доступ на фтп сервер, можно ли передать файл на сервер минуя мой компьютер?