Перейти к контенту

Установка скинов и языков под Safe Mode


theIggs

Рекомендуемые сообщения

1.

Как должны устанавливаться новые скины и языки в идеале.

 

Вы скачиваете новый язык или скин. Как правило, это ZIP-архив, внутри которого находится TAR-архив. Нам потребуется только TAR-архив.

Для новых языков файл будет называться lang-*******.tar (например, для русского языка обычно lang-Russian.tar), для новых скинов файл будет называться set-*******.tar (например, set-Invision_Power_Board_Winter.tar).

Проверьте, чтобы внутри TAR-архива не было ещё одного TAR-архива (бывает ;)).

 

Итак, вы извлекли файл .tar на свет божий. Берём его и копируем в папку archive_in, которая лежит в корневом каталоге форума.

 

Если хотим установить язык, идём в Админцентр -> Languages -> Import a Language (Админцентр -> Языки -> Импортирование языка). В выпадающем списке Tar-chive to import... (Импортируемый tar-архив...) вы должны увидеть ваш .tar-файл. Жмём Import (Распаковать).

В результате получаем новую подпапку в папке lang (обычно lang/2, lang/3 и т.д.) и новый язык в списке языков (в Панели Управления пользователя).

 

Возможные ошибки:

  • lang-*******.tar is possibly corrupted, please re-upload in binary (lang-*******.tar оказался битым архивом. Перезагрузите его в режиме binary) - открываем свой FTP-клиент, лезем на сервер, удаляем .tar-файл из archive_in, затем закачиваем его снова, не забыв выставить FTP-клиенту режим закачки binary.
  • lang-*******.tar is not a valid tar-chive (lang-*******.tar является неправильным архивом) - ну, собственно... где вы взяли-то такой? :D
  • Could not create a new directory in DIR_NAME, please give sufficient CHMOD permissions to allow this (Невозможно создать новую директорию в ИМЯ_ДИРЕКТОРИИ, установите правильный атрибут CHMOD для этой директории) - открываем FTP-клиент, лезем на сервер и меняем CHMOD для папки lang на 0777. Например, в Windows Commander'e это делается так: File -> Change Attributes (Файл -> Изменить атрибуты). 0777 - значит, отмечены все галочки.

Если хотим установить скин, идём в Админцентр -> Skins & Templates -> Import Skin files (Админцентр -> Скины и шаблоны -> Импорт скинов). В списке загруженных архивов (Current Archives Uploaded) вы должны увидеть ваш .tar-файл. Жмём Import (Распаковка).

В результате получаем новую подпапку в папке Skin (обычно Skin/s2, Skin/s3 и т.д.) и новую подпапку в папке style_images (название этой подпапки обычно предугадать невозможно :)).

Новый скин установлен, теперь пользователи смогут выбирать его в своей Панели управления (если, конечно, вы им это разрешили в Админцентре -> System Settings -> User Profiles -> Allow members to choose skins? или Админцентр -> Системные настройки -> Профиль пользователей -> Разрешить пользователям выбирать скины?)

 

Возможные ошибки:

  • На ошибках, связанных с неправильной закачкой архива, не останавливаемся (см. выше).
  • Cannot write to the DIR_NAME directory и т.д. (Невозможно произвести запись в директорию DIR_NAME и т.д.) - возникает либо для папки Skin, либо для папки style_images. Нужно установить CHMOD 0777 для соответствующей папки.
  • Directory creation failed, cannot import skin set. Please check the permission in 'archive_in' (Произошла ошибка при создании директории скина. Проверьте атрибуты директории 'archive_in') - установить CHMOD 0777 на папку archive_in.
  • Could not create a new directory in DIR_NAME (Невозможно создать новую директорию в директории DIR_NAME) - возникает либо для папки Skin, либо для папки style_images. Нужно установить CHMOD 0777 для соответствующей папки.
  • Could not read the FILE_TYPE и т.д. (Невозможно произвести чтение какого-либо файла) - 1) вам попался кривой скин, в котором нет нужных файлов (вряд ли, вряд ли...) - выбросить этот скин; 2) установить атрибуты CHMOD 0777 на папку archive_in.

Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 143
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Загружено фотографий

Safe Mode... а что это ваще такое?! :D Объясни, плз, чем этот режим отличается от обычного? И зачем он нужен?

 

2.

Что такое Safe Mode?

 

Safe Mode - безопасный режим, включается в php.ini вот кусок из этого файла

;
; Safe Mode
;
safe_mode = Off

; By default, Safe Mode does a UID compare check when
; opening files. If you want to relax this to a GID compare,
; then turn on safe_mode_gid.
safe_mode_gid = Off

Если он включён то вместо Off будет стоять On

довольно мерзопакостная штука со стороны хостеров включать безопастный режим, так как некоторые функции РНР перестают работать (popen напрммер), также появляются траблы с загрузкой и распаковкой *.tar архивов с лэнгвич- и скинпаками для IPB

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

 

[edit by theIggs]

Вообще-то Safe Mode позволяет повысить безопасность, например, чтобы не давать клиентам, совместно находящимся на shared хостинге, вредить друг другу.

Самое неприятное свойство Safe Mode для нас заключается в том, что в этом режиме скрипты не могут писать в каталоги кроме тех, в которых сами находятся. Но чтобы импортировать скин или язык, нам непременно нужно записать файлы в папки lang, Skin или style_images.

 

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

Ссылка на комментарий
Поделиться на других сайтах

3.

Как определить, что PHP запущен в Safe Mode?

 

а). Вы сами себе хост и у вас есть доступ к php.ini (например, форум в локальной сетке или http://localhost/ :D) - открываете php.ini и ищете там указанную выше строчку. В этом случае пункт 4 можете не читать - вам будет проще самим отключить Safe Mode на время установки языков и скинов.

 

б). Вы на чужом сервере - зайдите в Админцентр форума, System Settings (или Board Settings для версии IPB 1.1), Server Environment (в русском Админцентре -> Системные настройки -> Данные сервера) и ищите там safe_mode (можно поиском при помощи Ctrl+F ;)). Если напротив safe_mode у вас значение On - вы в Safe Mode.

 

в). По внешним признакам - вы пытаетесь поставить скин, но форум выдаёт бесконечные ошибки. Вы меняете все CHMOD'ы на 777, но ошибки не исчезают - тогда у вас определённо Safe Mode.

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...

4. Итак, дорогие мои мальчики, девочки и не определившиеся, самое интересное:

Установка скинов и языков под Safe Mode

 

Часть 1. Языки.

Импорт языков предполагает, что вы уже скачали ZIP-архив с файлами языка и извлекли из него TAR-архив с именем lang-*******.tar.

Разжимаем .tar-файл и извлекаем из него PHP-файлы с именами lang_*****.php (и ещё email_content.php ;)) - это и есть файлы языка. Эти файлы должны располагаться в папке lang форума. Создаём в папке lang подпапку с любым именем (например, 'ru' без кавычек, конечно же). В эту подпапку закачиваем все файлы, которые мы только что извлекли из архива.

 

Теперь направляемся в Админцентр -> SQL Management -> mySQL Toolbox, где внизу есть окошко для ввода команд SQL. Нужно выполнить следующую команду:

INSERT INTO ibf_languages (ldir, lname) VALUES ('ru', 'Русский');

Если у вас есть phpMyAdmin и вы знаете, как им пользоваться - пользуйтесь. :)

Если при установке форума вы указали другой префикс таблиц - замените в команде SQL префикс 'ibf_' на свой.

Если желаете отдать должное автору перевода, который устанавливаете, откройте файл conf.inc (он тоже лежит в .tar-архиве) и посмотрите там данные об авторе (поля 'lauthor' и 'lemail').

Например, для русского перевода от IgorekM команда SQL будет такая:

INSERT INTO ibf_languages (ldir, lname, lauthor, lemail) VALUES ('ru', 'Русский', 'IgorekM (http://www.bestfilez.net)', 'igorek@bestfilez.net');

Если кто не понял, здесь:

  • ldir = 'ru' - подкаталог, в который вы закачали .php-файлы языка (путь в данном случае: lang/ru)
  • lname = 'Русский' - название языка
  • lauthor = 'IgorekM (http://www.bestfilez.net)' - информация об авторе (которую можно посмотреть в файле conf.inc)
  • lemail = 'igorek@bestfilez.net' - email-адрес автора

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

 

 

Часть 2. Скины.

На тот случай, если я непонятно объясняю, в этот раз установку под Safe Mode описывает Wizard (за что ему огромное спасибо :D). Исходный текст здесь.

Скины. Под safe mode устанавливаются вручную. Первое что Вы должны сделать, это распаковать .tar архив скина на Ваш винт. Там должны быть следующие файлы:
  • macro.txt
     
     
  • stylesheet.css
     
     
  • templates.html
     
     
  • templates_conf.inc
     
     
  • wrapper.html

... ну и папка images.

В админке создавайте копию текущего скина (Skins & Templates -> Manage Skin Sets). Дальше Идите в Skins & Templates -> Manage Board Wrappers. Оттуда создайте новый сет (там есть кнопка Обзор..., нажмите ее и укажите файл wrapper.html из Вашего распакованного скина). Дальше идите в Skins & Templates -> Manage Template Sets. Там проделай те туже самую операцию, но укажите на файл templates.html... Таким образом Вы должны импортировать файлы macro.txt, stylesheet.css, templates.html, wrapper.html в каждый из разделов каиегории Skins & Templates (в файле templates_conf.inc содержится инфа об авторе скина, если хотите забейте ее вручную  :) ).

Теперь идите в Skins & Templates -> Manage Skin Sets (это там, где делали копию текущего скина) и кликайте по ссылке Edit, которая напротив скопированного скина. В появившемся окне выбирайте:

Use Templates: импортированный темплейт;

Use Macro Set: импортированный макро;

Use Image Directory: чуть не забыл... создайте на сервере папку в директории style_images с именм скина (ваще можно с любым именем, просто с именем скина удобно  :) ) и загрузите туда все файлы из директории images (та, что из .tar архива)... Ну и в окошке Edit выбирайте название папки...

Use Stylesheet: импортированный stylesheet;

Use Wrapper: ну Вы меня поняли... :)

Выбирайте ентот скин главным и зацените Ваш новый форум.

Вроде ничего не забыл... Должно получиться... у меня получилось :)

Есть один трабл правда... шаблоны для нового скина хранятся в базе, а не на серваке, поэтому использование модов, которые требуют Resynchronise, возможно тока с шаблонами основного скина... Просто выберите для нового скина не импортированный сет, а основной и, если надо подредактируйте html... Правда у меня таким макаром не встал Quick Reply с кодом и смайлами ;):)  :D

Очень рад, если помог кому-то...

 

Если не очень хотите работать руками, в природе существует хороший мод, вот такой вот: см. присоединенный файл для версии IPB 1.0.0

Нужно поставить его, включить в Админцентре -> System Settings -> General Configuration безопасный режим скинов (Use safe mode skins? = Yes; в русском Админцентре -> Системные настройки -> Главная конфигурация -> Использовать безопасный режим скинов? = Да) и пользоваться стандартными средствами импорта скинов.

Этот мод добавляет ещё опцию Rebuild PHP skin files from database templates - то есть если вы привыкли ставить новые хаки и т.д. руками через скиновые файлы - сможете эти самые файлы создать в соответствующих вашему новому скину папках.

ModSafeModeEnglish_1_5a.zip

Ссылка на комментарий
Поделиться на других сайтах

  • 2 месяца спустя...

mySQL query error: SELECT moderator.mid as is_mod, moderator.allow_warn, m.id, m.name, m.mgroup, m.password, m.email, m.restrict_post, m.view_sigs, m.view_avs, m.view_pop, m.view_img, m.auto_track,

m.mod_posts, m.language, m.skin, m.new_msg, m.show_popup, m.msg_total, m.time_offset, m.posts, m.joined, m.last_post,

m.last_visit, m.last_activity, m.dst_in_use, m.view_prefs, m.org_perm_id, m.temp_ban, m.sub_end, g.*

FROM ibf_members m

LEFT JOIN ibf_groups g ON (g.g_id=m.mgroup)

LEFT JOIN ibf_moderators moderator ON (moderator.member_id=m.id OR moderator.group_id=m.mgroup )

WHERE m.id=1

 

mySQL error: Unknown column 'm.password' in 'field list'

mySQL error code:

Date: Sunday 28th of March 2004 02:08:48 PM

 

помогите не могу зайти на форум пишет это:D

Ссылка на комментарий
Поделиться на других сайтах

  • 3 недели спустя...

У меня после установки нового скина на локалхост при входе в форум такая ошибка:

Fatal error: Call to undefined function: welcomepanel() in z:\home\flash\www\sources\Boards.php on line 523

как исправить?

Ссылка на комментарий
Поделиться на других сайтах

Fatal error: Call to undefined function: welcomepanel() in \home\flash\www\sources\Boards.php on line 523

 

Та же самая ошибка, что с этим можно сделать??

Ссылка на комментарий
Поделиться на других сайтах

gos1985

Folder

обращение к неопределенной функции welcomepanel в файле Boards.php, ищите само описение функции в скриптах, или ремарьте ее в самом Boards.php. функция или заремарена в скриптах или ее вообще не существует.

Ссылка на комментарий
Поделиться на других сайтах

грабли вот в чем уважаемые, сам узнал только сегодня поскольку safe_mode выключен на новом хостинге. когда аплоадиться шаблон он оказываеться уже создает папку S№ в папке Skin, я этого ни разу не видел, safe_mode не давал этого делать. НО, он то создает файлы в этой папке по образу и подобию стандартного комплекта инвижина, т.е. без хаков, а у вас установлена модифированная версия с добавленными функциями, так что или ручками добавляйте хаки заново (что муторно) или заливайте в соответсвующую S№ папочку скрипты от предидущего скина и потом майтесь с модернизацией скина. в моем случае мне постоянно приходиться возиться с skin_global.php skin_board.php function.php и другими где скин предусматривает какие то изменения в внешнем виде.

 

ЗЫ а вы думали смена дизайна это легко ?

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

Warning: chdir(): SAFE MODE Restriction in effect. The script whose uid is 22198 is not allowed to access /usr/apache/htdocs/myfree_content/otherside.amillo.net/forum/lang/5 owned by uid 99

 

а шо мине с этим делать?

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

А что делать с: Warning: chdir(): SAFE MODE Restriction in effect. The script whose uid is 26479 is not allowed to access /usr/apache/htdocs/myfree_content/pmmteam.w6.ru/forum/archive_in/set-nog_skin_1_3_0 owned by uid 99 in /usr/apache/htdocs/myfree_content/pmmteam.w6.ru/forum/sources/lib/tar.php on line 306

 

[cut]

Изменено пользователем theIggs
Ссылка на комментарий
Поделиться на других сайтах

Proffesor

А обязательно было вставлять такой большой кусок? Он аж пол-страницы занимает!

И еще да забейте вы на этот амилло.нет!

gos1985

Ты, наверное, Php-код Welcompanel'a прописал только в файле Boards.php?? Если да, то нужно дописать еще в файлу skin_boards.php своего стандартного скина! Должно получиться!

Ссылка на комментарий
Поделиться на других сайтах

Proffesor

У gos1985 и у Folder была ошибка!Да?

Так вот, если они сами прописывали PHP-код, то, скорее всего, забыли написать Код в файле skin_boards.php. Если они просто поставили Русифицированный IPB, то ошибки с Велкомпанел'ом быть не должно! В этом я уверен, т.к. сам проверял!

 

И еще Proffesor личный совет поищи другой хост!! :D

Ссылка на комментарий
Поделиться на других сайтах

  • 5 недель спустя...

С сегодняшнего утра выдаёт:

 

Warning: load_words(): SAFE MODE Restriction in effect. The script whose uid is 32117 is not allowed to access ./lang/7/lang_global.php owned by uid 99 in /home/egal/public_html/forum/sources/functions.php on line 1229

 

До этого всё работало нормально. Язык установлен давно, никаких проблем небыло.

Что можно сделать?

Ссылка на комментарий
Поделиться на других сайтах


×
×
  • Создать...

Важная информация

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