Изменение пути Trac Attachment - PullRequest
       41

Изменение пути Trac Attachment

0 голосов
/ 06 августа 2011

Как изменить путь / папку вложения Trac?

У меня есть виртуальный хостинг:

/home/public_html/ - my www folder
/home/trac/ - trac projects folder
/home/trac/attachment/ - attachment folder

Но у меня нет доступа к нему. Когда я прикрепляю файлы, я не могу вывести их через Apache, потому что они хранятся в apache htdocs.

И я не могу использовать «Псевдоним»: / (У меня нет доступа к файлам конфигурации Apache, у меня есть только .htaccess) И у меня есть доступ к источникам Trac (но где они хранятся в файле .egg?)

Что мне нужно сделать? Я хочу переместить папку вложений в / home / public_html / attachment /

1 Ответ

1 голос
/ 07 августа 2011

У вас есть несколько вариантов:

  • Переместите вложения в новое местоположение, затем замените каталог attachments символической ссылкой на новое местоположение.
  • Переместитевложения в новое место, затем отредактируйте исходный код Trac и измените путь к вложениям.Путь в настоящее время относительно папки среды , поэтому вам придется изменить его на абсолютный путь.
  • Переместить вложения в новое местоположение и внедрить небольшой плагин, который monkey-исправляет метод Attachment._get_path(), указанный выше.

Но вы не должны использовать ни одно из этих решений по следующим причинам:

  • Обслуживание вложений напрямую с веб-серверомОбходит все проверки разрешений, поэтому каждый будет иметь доступ ко всем вложениям.
  • У вас будут проблемы со специальными символами в именах файлов вложений (специальные символы кодируются в URL-адресе файла).Вашу установку будет сложнее поддерживать, если вы пропатчите исходный код или сделаете его обезьяньим.

Почему вы хотите обслуживать вложения с веб-сервера?Будут ли ваши пользователи загружать вложения очень интенсивно?

Правильное решение - внедрить X-Sendfile в Trac, что мы намерены сделать в ближайшем будущем.См. # 7894 для отслеживания прогресса.

...