Запуск Apache 2.4.10 на Debian 'Jessy' 8 ..

Я пытаюсь заставить OwnCloud работать на моем Raspberry Pi2, но часть Apache оказывается чем-то вроде препятствия. После просмотра документации по Apache, нескольких онлайн-руководств, видеоматериалов на YouTube я совершенно запутался. Поэтому я ищу подтверждение и ответы, надеясь, что в сети есть эксперт по Apache :)

Итак, чтобы функция ownCloud нуждалась в обработке своего файла .htaccess, и теперь я понимаю, что мне нужно установить директиву "AllowOverride" (в блоке раздела) на "All" в некотором файле конфигурации.

Либо "httpd.conf", либо - в моем случае - "apache2.conf" - это основной файл конфигурации Apache (находится в /etc /apache2 /). Правильно ?
И есть ли возможность отдельного конфигурационного файла только для сайта ownCloud? Конфигурационный файл vhost? Как мне создать такой файл vhost (имя? место нахождения?) ?
Руководства указывают на местоположение /etc /apache2 /sites-enabled и на то, что я должен отредактировать «000-default.conf», но это не файл. Это символическая ссылка на соответствующий файл в /etc /apache2 /sites -имеется в наличии'. Правильно ли я понимаю, что я должен поместить в этот файл разделы say-vhost -let?

Теперь актуальные вопросы:
- на каком уровне я должен включить htaccess, в основном конфиге или в конфиге vhost? пытаясь обеспечить безопасность как можно теснее
- кто-нибудь знает, что если изменить директиву AllowOverride, единственное, что нужно сделать? Модуль перезаписи также часто упоминается. Как насчет этого ?

Я собираюсь пойти с предложением davidgo использовать AllowOverride специально в файле виртуального хоста для owncloud. И я получаю довольно элегантную логику определения vhost на сайтах, доступных, а затем «включения» его путем помещения sym.link в сайты с поддержкой. Спасибо, Пол, за то, что указал мне на это.

Заранее спасибо за ваше время и усилия!

2 ответа2

0

Если вы используете Apache для owncloud, вы можете использовать AllowOverride глобально.

Честно говоря, в большинстве случаев вы бы хотели, чтобы это было включено для всех сайтов, так как использование .htaccess для дружественных URL-адресов очень распространено.

Да, правильное место для этого для глобального включения находится в 000-default.conf. Да, это "просто символическая ссылка", но именно так Debian управляет сайтами. Фактические файлы конфигурации для каждого сайта хранятся в /sites-available а команды a2ensite и a2dissite используются для включения и отключения сайтов путем добавления символических ссылок в /sites-enabled . Редактирование символьной ссылки аналогично редактированию реального файла.

В конце вашего apache2.conf вы увидите, что есть включение для включения любых conf-файлов из /sites-enabled

Добавьте оператор в разделе <VirtualHost *:80> , который будет соответствовать любому сайту (который не определен в его собственном конфигурационном файле).

Да, есть возможность иметь файл конфигурации только для owncloud, в этом случае вы создадите новый файл конфигурации в /sites-available (возможно, скопировав 000-default), добавив директиву ServerName соответствующую URL-адресу, который вы Я буду использовать для доступа к owncloud, а затем включить его с помощью a2ensite <config file name> .

0

Возможно иметь отдельный конфигурационный файл только для веб-сайта ownCloud - Apache будет читать любые файлы, которые были добавлены в основную конфигурацию, используя директиву "Включить", которая обычно покрывает все файлы с помощью «.load» или «. конф»

Включите .htaccess в контейнере Каталога в соответствующем контейнере vhost для лучшей безопасности, а затем для всех хостов - для еще большей безопасности вырежьте и вставьте содержимое .htaccess в контейнер vhost и полностью покончите с файлом .htaccess.

Чтобы модуль перезаписи работал, необходимо включить директиву перезаписи. Скорее всего, ваш файл .htaccess сделает это.

Модуль перезаписи используется для перезаписи формата запросов, который, например, позволяет URL-адресу скрыть тот факт, что он фактически выполняет файл php.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .