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

[IPB 2.x.x] Если не закачиваются файлы-приложения к сообщениям


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

Столкнулся только что с такой проблемой: установил на сайт IPB 2.2, пробую прикрепить к сообщению приложение - не прикрепляется, как не крути настройки и chmod папки uploads.

 

Суть проблемы: Такое происходит, потому что форум сам создает в папке uploads ежемесячные подпапки для файлов с именами формата monthly_mm_yyyy. Но у многих хостеров в конфиге PHP заблокирована из соображений безопасности PHP-функция chmod(), позволяющая скрипту самостоятельно присваивать права доступа папкам. Т.е. что происходит: форум создает ежемесячную папку, но права на запись ей присвоить не может, соотв. и записать в неё потом тоже ничего не может.

 

Мое решение:

 

Шаг 1: Вручную создаем в папке uploads (или в любой другой папке, которая у вас в настройках форума назначена папкой для загрузки приложений) подпапку attachments. Присваиваем ручками в FTP-менеджере этой папке CHMOD-права 0777.

 

Шаг 2: Открываем php-файл форума папка_с_форумом/sources/classes/attach/class_attach.php

 

Шаг 3: Ищем в файле class_attach.php такую строку кода (~1072-я строка):

 

		if ( $this->settings['allow_monthly_upload_dirs'] )

 

Заменяем её на:

 

		/*if ( $this->settings['allow_monthly_upload_dirs'] )

 

Шаг 4: Ищем в файле class_attach.php такие строки кода (~1096-я строка):

 

			else
		{
			# Set path and dir correct
			$this->upload_path .= "/" . $this_month;
			$this->upload_dir   = $this_month."/";
		}
	}

 

Заменяем её на:

 

			else
		{
			# Set path and dir correct
			$this->upload_path .= "/" . $this_month;
			$this->upload_dir   = $this_month."/";
		}
	}*/
	$this->upload_path .= "/" . 'attachments';
	$this->upload_dir   = 'attachments'."/";

 

 

Шаг 5: Сохраняем и закрываем файл class_attach.php. Радуемся работающим аттачам :D

 

 

ЗЫ: Если на форуме гайд на эту тему уже где-то был, сорри. Я всего лишь столкнулся с проблемой, нашел решение, отписался. Так сказать, "мапед не мой, я только объяву разместил" ©

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

По пунктам:

  1. Если запрещено изменение атрибутов на файлы и директории, то тогда не должно работать кеширование шаблонов в PHP-файлы (принцип кеширования таков: создается директория «cacheid_*», устанавливаются атрибуты доступа 0777 и затем в эту директорию записываются кеш-файлы).
  2. В таком случае у Вас должна быть включена настройка «Использовать безопасный режим работы со стилями?» — в этом случае все шаблоны будут грузиться не из файлов, а из базы данных.
  3. В таком случае загружаемые файлы не раскидываются по разным директориям каждый месяц — при инициализации объекта выполняется условие:
    $this->settings['allow_monthly_upload_dirs'] = SAFE_MODE_ON ? 0 : ( $this->ipsclass->vars['safe_mode_skins'] ? 0 : 1 );


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

sM1Le

Я больше программер, чем админ, так что в большинстве случаев предпочитаю топорный метод решения проблем :D Да и форум я этот (IPB) вижу (изнутри) второй день в глаза только...

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

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

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

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