![]() |
Extension Manager не работает
Никак не могу заставить Extension Manager работать - не могу загрузить никакие extensions.
Когда я пытаюсь импортировать extension, мне выводится: Цитата:
Цитата:
Цитата:
CURL - enabled в Install tool. Memory_limit = 64M в php.ini У меня Typo3 версия 4.1.5, php - 4.4.0 Что делать ума не приложу? Думал перейти на Typo3 4.2, но там вроде PHP 5 нужно. Искал в интернете, но что-то ни один рецепт мне не подошел. Перейти на другой сервер я не могу, надо с этим работать. Может как-то можно тест какой-нибудь запустить, чтобы понять, что происходит? |
1. У вас gzip в php работает?
2. если ничего не помогает - ставите TYPO3 локально, устанавливаете расширение, заливаете его папку на сервер, устанавливаете. |
1. Вообще должен. Честно сказать, не знаю, как можно проверить.
2. Идея понятна. Вечером можно будет попробовать. Но все-таки может есть какой-то вариант как-то протестировать появляющиеся ошибки? А то уж больно неохота связываться с переустановкой TYPO3 на компьютер. |
Я уже решил глубже покопать, а то вообще никаких идей.
Ошибка при попытке ручной загрузки идет отсюда (файл class.em_terconnection.php): Цитата:
Есть какие-то идеи? |
Начал разбираться с остальными ошибками.
Единственное место с ошибкой при перезагрузке зеркал находится в файле class.em_index.php: function fetchMetaData($metaType) { global $TYPO3_CONF_VARS; switch($metaType) { case 'mirrors': $mfile = t3lib_div::tempnam('mirrors'); $mirrorsFile = t3lib_div::getURL($this->MOD_SETTINGS['mirrorListURL']); if($mirrorsFile===false) { t3lib_div::unlink_tempfile($mfile); $content = '<p>The mirror list was not updated, it could not be fetched from '.$this->MOD_SETTINGS['mirrorListURL'].'. Possible reasons: network problems, allow_url_fopen is off, curl is not enabled in Install tool.</p>'; } else { t3lib_div::writeFile($mfile, $mirrorsFile); $mirrors = implode('',gzfile($mfile)); t3lib_div::unlink_tempfile($mfile); $mirrors = $this->xmlhandler->parseMirrorsXML($mirrors); if(is_array($mirrors) && count($mirrors)) { t3lib_BEfunc::getModuleData($this->MOD_MENU, array('extMirrors' => serialize($mirrors)), $this->MCONF['name'], '', 'extMirrors'); $this->MOD_SETTINGS['extMirrors'] = serialize($mirrors); $content = '<p>The mirror list has been updated and now contains '.count($mirrors).' entries.</p>'; } else { $content = '<p>'.$mirrors.'<br />The mirror list was not updated as it contained no entries.</p>'; } } ... Понятно, что ошибка идет из-за ошибки в $mirrorsFile (===false), а $mirrorsFile - это функция t3lib_div::getURL($this->MOD_SETTINGS['mirrorListURL']). Значит какая-то проблема с getURL. Связки с проблемой ручной загрузки пока не обнаружил. |
Ну, и последняя (первая) ошибка, которая непосредственно возникает при подгрузке extensions, ведет к тому же файлу class.em_index.php. Фрагмент непосредственно после предыдущего (в функции fetchMetaData($metaType)):
case 'extensions': $this->fetchMetaData('mirrors'); // if we fetch the extensions anyway, we can as well keep this up-to-date $mirror = $this->getMirrorURL(); $extfile = $mirror.'extensions.xml.gz'; $extmd5 = t3lib_div::getURL($mirror.'extensions.md5'); if(is_file(PATH_site.'typo3temp/extensions.xml.gz')) $localmd5 = md5_file(PATH_site.'typo3temp/extensions.xml.gz'); if($extmd5 === false) { $content .= '<p>Error: The extension MD5 sum could not be fetched from '.$mirror.'extensions.md5. Possible reasons: network problems, allow_url_fopen is off, curl is not enabled in Install tool.</p>'; } elseif($extmd5 == $localmd5) { $content .= '<p>The extension list has not changed remotely, it has thus not been fetched.</p>'; } else { $extXML = t3lib_div::getURL($extfile); if($extXML === false) { $content .= '<p>Error: The extension list could not be fetched from '.$extfile.'. Possible reasons: network problems, allow_url_fopen is off, curl is not enabled in Install tool.</p>'; } else { t3lib_div::writeFile(PATH_site.'typo3temp/extensions.xml.gz', $extXML); $content .= $this->xmlhandler->parseExtensionsXML(PATH_site.'typo3temp/extensions.xml.gz'); } } break; } Соответственно проблема возникает из-за ошибки в $extmd5, которая явлется функцией t3lib_div::getURL($mirror.'extensions.md5'), где $mirror = $this->getMirrorURL() В общем, опять существует некая проблема с функцией getURL из файла class.t3lib_div.php |
Может кто знает, подскажите, пожалуйста, что обозначают переменные:
$this->MOD_SETTINGS['mirrorListURL'] $this->getMirrorURL() Я, по-моему, чересчур углубился, а толку никакого. :( |
$this->MOD_SETTINGS['mirrorListURL'] = $TYPO3_CONF_VARS['EXT']['em_mirrorListURL']
А для $this->getMirrorURL() целая функция есть. В общем, не знаю, где копать. У меня в ЕМ никаких зеркал не устанавивается, только стоит ссылка на http://repositories.typo3.org/mirrors.xml.gz. Надо бы какую-то проверку сделать, но как? :confused: |
Цитата:
|
1) Проверить установлен ли curl
2) Проверить доступен ли на запись каталог typo3temp |
установленные модули посмотрите в phpinfo - есть в инсталтуле
|
Цитата:
... Configure Command './configure' '--with-config-file-path=/usr/local/etc' '--with-mysql=/usr/servers/mysql' '--enable-discard-path' '--enable-track-vars' '--enable-dbase' '--enable-exif' '--with-gd=/usr/local/' '--enable-exif' '--enable-memory-limit' '--enable-mbstring' '--with-zlib' '--with-iconv' '--with-gettext' '--with-mcrypt' '--enable-bcmath' '--enable-gd-native-ttf' '--with-ttf' '--with-freetype-dir=/usr/local' '--with-jpeg-dir=/usr/local' '--enable-xslt' '--with-xslt-sablot=/usr/local' '--with-expat-dir=/usr/local' '--with-curl' '--with-dom' ... curl CURL support enabled CURL Information libcurl/7.15.5 OpenSSL/0.9.7e zlib/1.2.3 Как еще можно проверить его функциональность? 2) права на typo3temp и все папки внутри я сейчас 777 поставил. Но не помогает. === Я сейчас решил проверить, что с переменными происходит: Цитата:
Цитата:
Соответственно ошибка все-таки сидит где-то в getURL, т.к. $this->MOD_SETTINGS['mirrorListURL'].' отображает правильно как http://repositories.typo3.org/mirrors.xml.gz |
а наоборот, отключать curl в инсталтуле пробовали?
|
Цитата:
Цитата:
Я поставил 1. Тут все (или не все?) упирается в функцию getURL из class.t3lib_div.php, которая видимо некорректно работает (?). Она как раз на основе CURL работает. |
Она работает через CURL только если вы прямо задали такую настройку в Install Tool. В других случаях она работает через fsockopen.
|
Цитата:
Цитата:
То есть остается только: Цитата:
$content = @file_get_contents($url); Я прав? Или я что-то не понимаю? |
Отключил CURL.
После строчки $content = @file_get_contents($url); поставил $content = 1; В случае с перезагрузкой зеркал - никаких изменений. Значение выдается 0. В случае с Import Extension выдал: Цитата:
|
Попробовал впрямую протеститровать file_get_contents.
В файл class.em_index.php вставил выделенные красным строчки: Цитата:
Сверху страницы: Цитата:
Цитата:
|
Может с правами что-то не то. Пока не понял в чем дело.
|
Сейчас создал в корневой директории typo3 файлик i.php со следующим содержанием:
Цитата:
Warning: file_get_contents(http://mail.ru): failed to open stream: Permission denied in ../site/www/i.php on line 2 По совету одного из форумов сделал еще один файлик i2.php со следующим содержимым: Цитата:
Значит функция не работает? Напоминаю, что allow_url_fopen у меня on. Думаю, может стоит провайдеру написать? Или я туплю? |
Попробовал на другом форуме спросить по поводу моего последнего сообщения (i.php)
Ответили: Цитата:
Цитата:
Про fopen wrappers я нашел, что она включается через allow_url_fopen. Это я уже сделал. |
Мне ответил провайдер:
Цитата:
|
Цитата:
|
Ну, есть еще 3 вариант - заплатить 200 рублей. :)
А как через Т3Х грузить? Я не очень понял. Насколько я понимаю, расширения можно загружать на локальный сервер, а потом распаковывать и выкладывать на сервер провайдера. Это имеется в виду? |
Цитата:
|
Спасибо. Попробую.
|
Я вручную закачал .t3x файл в папку /typo3conf/ext (через FTP, т.к. через Import extensions EM не работает, я писал выше). Install extensions ничего не ищет.
Если нужно идти по пути, который с самого начала предлагал Pomotom (т.е. установка локального Typo3), тогда понятно. А какой-то иной есть вариант? |
Не надо .t3x класть в typo3conf/ext. Заходите в менеджер расширений, пункт "import extensions". Там формочка выбора файла. Выбираете ваш .t3x файл, он закачивается на сервер, менеджер расширений его распаковывает.
|
Это я знаю. К сожалению, если вы читали начало темы, у меня эта функция не работает. Можно, конечно, еще поразбираться, что конкретно не так именно с ней. Но у меня подозрение, что она также как-то завязана с внешними запросами, которые на моем провайдере запрещены "по умолчанию" :(
Для чистоты эксперимента может стоить заплатить 200 руб. за месяц и проверить собственно функциональность EM. Но это из-за оргмоментов опять надолго затянется, что плохо. :confused: |
Меняйте провайдера. Зачем мучатся?
|
Только что добился от Golden Telekoma, чтобы открыли мне ipшник Typo3 (бесплатно).
Провайдер открыл 217.29.33.146 и 217.29.33.147 Заработал mirror list! Остальное пока не проверял. Вернее попробовал, но что-то не получилось. Надо будет разбираться попозже. |
Цитата:
|
Так я уже писал - провайдер закрыл все внешние соединения. Поэтому у меня fopen и не работал. Теперь 2 адреса он разблокировал, заработал mirror list. Соответственно в mirror liste не работают все серверы, которые имеют отличающиеcя IP. Но собственно по загрузке с main repository (который на typo3.org) там еще какие-то проблемы возникают. Я пока точно посмотреть не могу, попозже разберусь.
Закрытие внешних соединений провайдер объяснил тем, что за трафик деньги не берутся, и на базе бесплатных внешних коннектов можно организовать proxy сервер. Поэтому за их полное открытие они и просят 200 р. в месяц. Насколько я понял проблема такая не только у меня. Провайдер сказал, что для пользователей Bitrix им тоже пришлось IP адреса открывать. |
Да, что-то не получается...
Mirror list сейчас работает, нет проблем. Но вот Import extensions что-то нет. Я сделал Retrieve/Update. Выдало: Цитата:
Выдается: Цитата:
|
Иногда также пишет при попытке Retrieve/Update:
Цитата:
|
Последнее - нормально. Нет изменений, зачем скачивать заново?
По предыдущему: проверьте в настройках, что возможен показ расширений без описаний (basic security check) |
Галочку на Enable extensions without review (basic security check) поставил.
Изменений нет. на tt_news пишет No matching extensions found. |
Цитата:
P.S.: По-моему это баг... не фича. |
Цитата:
Набрал tt_news и выдался список расширений. tt_news наконец импортировалась. Огромное всем спасибо! |
Часовой пояс GMT +4, время: 16:31. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot