fideral 0 Опубликовано: 27 октября 2009 Рассказать Опубликовано: 27 октября 2009 Поржал от души. test343 пишите еще. Либо вы совсем тупой, либо я уже даже и не знаю как вас назвать. Вам разработчик движка очень все конкретно расписал, что нужно сделать для обеспечения нормального функционирования скрипта. Вы же как баран уперлись рогом и пытаетесь всем доказать, что вы суперневъебенный программист. Владимир я бы на вашем месте его давно бы уже забанил. Ссылка на сообщение Поделиться на других сайтах
flo.mAster 7 Опубликовано: 27 октября 2009 Рассказать Опубликовано: 27 октября 2009 Цирк! Поржал от души. Владимир говорит что делать, а тот след сообщением одну и туже фразу повторяет, абасцать колени!!!! Афтор: 1. Настрой правильно php.ini 2. Включи интернет на компе 3. На ебэе моцк купи Ссылка на сообщение Поделиться на других сайтах
maks1192 96 Опубликовано: 27 октября 2009 Рассказать Опубликовано: 27 октября 2009 (изменено) test343, ты "этот продукт" (Denwer) ещё даже не опробывал, а уже говоришь - что это какая-то "сторонняя" гадость! Я когда был тупым молодым тупарезом, как ты, - я тоже так думал - всё должно быть официально и т.д. и т.п. Но у меня них фига не стало получаться, забил... Услышал о сборке как "Denwer", поставил легко - и вуаля! Он сам всё за тебя сделает!!! В общем test343 не доставай celsoft`а, а: если нехочешь ставить какую либо сборку сервера: учи понятия php apache mysql и т.д. и т.п. С этой проблемой.. думаю никто помогать не будет! Изменено 27 октября 2009 пользователем maks1192 Ссылка на сообщение Поделиться на других сайтах
sergey78 18 Опубликовано: 27 октября 2009 Рассказать Опубликовано: 27 октября 2009 а че, прикольная тема! щас таких уже мало, не то что раньше Ссылка на сообщение Поделиться на других сайтах
test343 0 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Автор Итак, я разобрался, почему не работает DEMO версия DLE. Я сейчас напишу, в чем проблема, и как ее исправить, хотя я более чем уверен, что никто из программистов DLE не будет вносить соответствующие изменения в исходный код. Это я понял по тем агрессивным комментариям крутых кодеров, которые уверены, что в их продукте просто не может быть проблем. Да не в этом суть. Итак: 1. Интернет у меня на хосте есть (я уже устал это повторять). Но! Интернет у меня через proxy сервер! А что это означает? А то, что код вида file_get_contents($url) или $ch = curl_init($url); $response = curl_exec($ch); вешается, и скрипт тупо умирает по таймауту! Почему? Да потому что, если сервер находится за прокси, то необходимо передать настройки proxy сервера в вызовы file_get_contents (соответсвенно curl_init). Вот пример кода в случае proxy: $opts = array('http' => array('proxy' => 'tcp:// proxy_server_host ', 'request_fulluri' => true)); $connection = stream_context_create($opts); $response = file_get_contents($url, null, $connection); $ch = curl_init($url); //Настраивать прокси тут: curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt($ch, CURLOPT_PROXYPORT, port); curl_setopt($ch, CURLOPT_PROXY, proxy_server_host); curl_setopt($ch, CURLOPT_PROXYUSERPWD, "user:pass"); $response = curl_exec($ch); Дальше, даже если при использовании file_get_contents или curl_init не используется proxy, ВСЕГДА необходимо выставлять таймауты на запросы, а не полагаться на то что функции как-то сработают там (даже если сервер недоступен). Это можно сделать так: ini_set('default_socket_timeout', $timeout);//для file_get_contents curl_setopt(($ch, CURLOPT_TIMEOUT, $timeout);//для curl_exec 2. Установка denver проблем НИКАК не решила. Это понятно почему – смотри пункт 1. 3. Учите матчасть! Ссылка на сообщение Поделиться на других сайтах
Captain 623 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Продукт-то здесь с какого боку. Denwer не решил проблем, поставь appserver и т.д. и т.п., подозреваю что "такая каша" творится у вас на компе. Ссылка на сообщение Поделиться на других сайтах
celsoft 6 067 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Дальше, даже если при использовании file_get_contents или curl_init не используется proxy, ВСЕГДА необходимо выставлять таймауты на запросы, а не полагаться на то что функции как-то сработают там (даже если сервер недоступен). Это можно сделать так: 3. Учите матчасть! Да будет вам известно, о великий вы наш программист. Скрипт использует CURL и таймауты для CURL в скрипте ВЫСТАВЛЕНЫ и равны десяти секундам. И не несите тут бред про мат. части. ini_set('default_socket_timeout', $timeout);//для file_get_contents Для особо одаренных программистов ini_set это скриптовое замещение настроек php.ini которое не будет работать на 90% хостингов, и хостинги сами настраивают эти таймауты и не позволяют скриптом замещать настройки PHP, на которых кстати и будет стоять сайт вашего заказчика и не один профессиональный программист никогда не будет использовать эту функцию и полагаться на нее. Хотя зачем это вам говорить, вы меня уже утомили, своей тут глупой показухой якобы великих знаний. Тут никто не нуждается в этом. Это вы своему заказчику будете "по ушам ездить" о своем величии Ссылка на сообщение Поделиться на других сайтах
Red Drag 18 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Не ну вообще тема - смех! Ссылка на сообщение Поделиться на других сайтах
test343 0 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Автор upload\engine\ajax\rss.php function get_content ($scheme, $host, $path, $query, $others=''){ if (function_exists('curl_init')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $scheme."://".$host.$path."?".$query); curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($ch, CURLOPT_REFERER, $scheme."://".$host.$path.$query); if ($others != '') curl_setopt($ch, CURLOPT_COOKIE, $others); @curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($ch); curl_close($ch); if ($data) return $data; else return false; } else { if (!empty($others)) $others = "Cookie: ".$others."\r\n"; else $others = ""; $post="GET $path HTTP/1.1\r\nHost: $host\r\nContent-type: application/x-www-form-urlencoded\r\n{$others}User-Agent: ".$_SERVER['HTTP_USER_AGENT']."\r\nContent-length: ".strlen($query)."\r\nConnection: close\r\n\r\n$query"; $h=@fsockopen($host,80, $errno, $errstr, 30); if (!$h) { return false; } else { fwrite($h,$post); for($a=0,$r='';!$a;){ $b=fread($h,8192); $r.=$b; $a=(($b=='')?1:0); } fclose($h); } return $r; } } Как мы видим, ни какой таймаут в curl_setopt тут и не выставляется!А вот еще: upload\engine\editor\jscripts\tiny_mce\plugins\spellchecker\classes\GoogleSpell.php function &_getMatches($lang, $str) { $server = "www.google.com"; $port = 443; $path = "/tbproxy/spell?lang=" . $lang . "&hl=en"; $host = "www.google.com"; $url = "https://" . $server; // Setup XML request $xml = '<?xml version="1.0" encoding="utf-8" ?><spellrequest textalreadyclipped="0" ignoredups="0" ignoredigits="1" ignoreallcaps="1"><text>' . $str . '</text></spellrequest>'; $header = "POST ".$path." HTTP/1.0 \r\n"; $header .= "MIME-Version: 1.0 \r\n"; $header .= "Content-type: application/PTI26 \r\n"; $header .= "Content-length: ".strlen($xml)." \r\n"; $header .= "Content-transfer-encoding: text \r\n"; $header .= "Request-number: 1 \r\n"; $header .= "Document-type: Request \r\n"; $header .= "Interface-Version: Test 1.4 \r\n"; $header .= "Connection: close \r\n\r\n"; $header .= $xml; // Use curl if it exists if (function_exists('curl_init')) { // Use curl $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $header); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); $xml = curl_exec($ch); curl_close($ch); } else { // Use raw sockets $fp = fsockopen("ssl://" . $server, $port, $errno, $errstr, 30); if ($fp) { // Send request fwrite($fp, $header); // Read response $xml = ""; while (!feof($fp)) $xml .= fgets($fp, 128); fclose($fp); } else echo "Could not open SSL connection to google."; } // Grab and parse content $matches = array(); preg_match_all('/<c o="([^"]*)" l="([^"]*)" s="([^"]*)">([^<]*)<\/c>/', $xml, $matches, PREG_SET_ORDER); return $matches; } И как мы опять видим, ни какой таймаут в curl_setopt тут и не выставляется! Ссылка на сообщение Поделиться на других сайтах
celsoft 6 067 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Как мы видим, ни какой таймаут в curl_setopt тут и не выставляется! файл engine/ajax/rss.php никакого отношения к RSS информерам не имеет, более того пользовательской частью скрипта (читай главной) не используется вообще, это один из дополнительных компонентов админпанели, которые даже не вызовутся скриптом, когда на сервере скриптом будет обнаружено отсутствие интернета, тоже самое касается и upload\engine\editor\jscripts\tiny_mce\plugins\spellchecker\classes\GoogleSpell.php Ссылка на сообщение Поделиться на других сайтах
test343 0 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 (изменено) Автор Ну я могу только предложить поставить демо версию на хост, где интернет через прокси и увидить все собственными глазами. Я проделал это на хосте с прокси и без -- с прокси проблемы, без прокси все работает! Ну вы же не будете этого делать, потому что в вашей идеальной системе просто не может быть проблем! Изменено 29 октября 2009 пользователем test343 Ссылка на сообщение Поделиться на других сайтах
celsoft 6 067 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Ну вы же не будете этого делать, потому что в вашей идеальной системе просто не может быть проблем! Я этого не говорил, я лишь говорил о причинах вашей проблемы. Я в отличие от вас всегда умею признавать свои ошибки, более того исправлять свои ошибки, а не начинаю писать по матчасти абсолютно не разбираясь что за что отвечает и где работает, как это делаете вы. И что я не буду делать? Ставить таймаут, который уже стоит? Ссылка на сообщение Поделиться на других сайтах
Al-x 7 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 ржу-нимагу с темы))) Уже второй день читаю... Аля, купил молот, забил им винт и пошёл жаловаться на молоток, что теперь винт не выкрутить Ссылка на сообщение Поделиться на других сайтах
flo.mAster 7 Опубликовано: 29 октября 2009 Рассказать Опубликовано: 29 октября 2009 Угараю, т.е. получается скрипт должен определить юзает ли человек прокси, узнать адрес, логин и пароль и работать через прокси? абасцать калени ) такого цирка нигде не видел Ссылка на сообщение Поделиться на других сайтах
IT-Security 33 Опубликовано: 30 октября 2009 Рассказать Опубликовано: 30 октября 2009 Интересно, хоть ОДИН ХОСТЕР до такого идиотства додумается?На какой рабочей площадке будет прокси стоять?Купи хостинг за 50 рублей блин, ленивый ТС! WinXP вообще в качестве сервера на котором что-то делать можно бред! Ссылка на сообщение Поделиться на других сайтах
warning85 0 Опубликовано: 30 октября 2009 Рассказать Опубликовано: 30 октября 2009 ЖЕЛАЮ ВСЕМ НЕ ПОПАДАТЬСЯ НА ТАКИХ ХОСТЕРОВ)))) Ссылка на сообщение Поделиться на других сайтах
test343 0 Опубликовано: 30 октября 2009 Рассказать Опубликовано: 30 октября 2009 (изменено) Автор Угараю, т.е. получается скрипт должен определить юзает ли человек прокси, узнать адрес, логин и пароль и работать через прокси?абасцать калени ) такого цирка нигде не видел Научитесь читать и думать, прежде чем что-то брякать не в тему. Для начала система должна ХОТЬ КАК-ТО работать, независимо от того, через прокси интернет или нет, пусть даже в случае прокси часть функций системы будет недоступно. На данный момент же имеется АБСОЛЮТНО неработающий front end – браузер выдает пустую страницу. Более того изменить настройками я это никак не могу – отключение RSS никак не помогает. Исходники я тоже менять не могу, потому что демо-версия поставляется с криптованными исходниками. Дальше. Речь здесь не о разворачивании рабочей версии на рабочем хосте, а о возможности посмотреть функционал DLE на тестовой машине. А сделать это невозможно в силу причин описанных выше. Дальше. Как я узнал, что это зависит от прокси? Все очень просто – я не поленился и развернул DLE на 2-х машинах, на 1-й интернет через прокси, а на 2-й без него. На 1-й машине абсолютно неработающая система, а на 2-й все работает! Я просто не понимаю, почему разработчики DLE упираются и не признают проблему, когда им под нос уже сунули сценарий, который очень легко воспроизвести. Дальше. По поводу того как настраивать прокси сервер. Опять тут все просто. Конечно же, система не может никак узнать настройки прокси – адрес, порт, логии пароль. Это должно делаться на этапе инсталляции, либо в административной панели. При незаданных настройках прокси, он просто не должен использоваться. Настройка прокси-сервера желательная, но необязательно – повторяю, система должна ХОТЬ КАК-ТО работать, независимо от того, через прокси интернет или нет, пусть даже в случае прокси часть функций системы будет недоступно. Интересно, хоть ОДИН ХОСТЕР до такого идиотства додумается?На какой рабочей площадке будет прокси стоять?Купи хостинг за 50 рублей блин, ленивый ТС!WinXP вообще в качестве сервера на котором что-то делать можно бред! Научитесь читать и думать, прежде чем что-то брякать не в тему. Для начала система должна ХОТЬ КАК-ТО работать, независимо от того, через прокси интернет или нет, пусть даже в случае прокси часть функций системы будет недоступно. На данный момент же имеется АБСОЛЮТНО неработающий front end – браузер выдает пустую страницу. Более того изменить настройками я это никак не могу – отключение RSS никак не помогает. Исходники я тоже менять не могу, потому что демо-версия поставляется с криптованными исходниками. Дальше. Речь здесь не о разворачивании рабочей версии на рабочем хосте, а о возможности посмотреть функционал DLE на тестовой машине. А сделать это невозможно в силу причин описанных выше. Дальше. Как я узнал, что это зависит от прокси? Все очень просто – я не поленился и развернул DLE на 2-х машинах, на 1-й интернет через прокси, а на 2-й без него. На 1-й машине абсолютно неработающая система, а на 2-й все работает! Я просто не понимаю, почему разработчики DLE упираются и не признают проблему, когда им под нос уже сунули сценарий, который очень легко воспроизвести. Дальше. По поводу того как настраивать прокси сервер. Опять тут все просто. Конечно же, система не может никак узнать настройки прокси – адрес, порт, логии пароль. Это должно делаться на этапе инсталляции, либо в административной панели. При незаданных настройках прокси, он просто не должен использоваться. Настройка прокси-сервера желательная, но необязательно – повторяю, система должна ХОТЬ КАК-ТО работать, независимо от того, через прокси интернет или нет, пусть даже в случае прокси часть функций системы будет недоступно. Изменено 30 октября 2009 пользователем test343 Ссылка на сообщение Поделиться на других сайтах
celsoft 6 067 Опубликовано: 30 октября 2009 Рассказать Опубликовано: 30 октября 2009 Я просто не понимаю, почему разработчики DLE упираются и не признают проблему, когда им под нос уже сунули сценарий, который очень легко воспроизвести. Вы вообще слышите что вам сказали, что таймауты в скрипте стоят. И на нормальном сервере с нормальными настройками PHP интерпретатор учитывает и выполняет эту команду, у вас нет, вам что нужно ткуть в настройки сервера и указать на проблему, как это в этой теме было уже не раз? Только я этого делать больше не буду. Вы сами написали что вы здесь самый умный, настраивайте свой копмьютер сами.Тема закрыта, т.к. обсуждать тут больше нечего. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения