Как мне настроить мой сервер apache2 для ownCloud?
Отказ от ответственности: Запуск Linux Mint 14 MATE
Везде, где я смотрю, я вижу, что вы должны включить.htaccess для Apache2 Server при запуске ownCloud. Ну, никто не говорит, где это сделать!
У меня есть данные owncloud от
- / Var / Библиотека / OwnCloud / данные
- и жесткий диск 750 ГБ, смонтированный в / var / lib / owncloud / data (я не смог получить owncloud для доступа к / media / 750 GB / data)
nano nano / etc / apache2 / sites-enabled / 000-default приводит к:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride All <-I switched this from NONE*************
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all <-I switched this from NONE*************
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Я даже не вижу каталог для owncloud там. Просто /var/www, но мои данные о себе работают из / var / lib / owncloud / data. Как мне настроить.htaccess для этой папки?
Так, что следующая ошибка на странице администратора ownCloud исчезает:
Ваш каталог данных и ваши файлы, вероятно, доступны из Интернета. Файл.htaccess, который предоставляет ownCloud, не работает. Мы настоятельно рекомендуем вам настроить свой веб-сервер таким образом, чтобы каталог данных больше не был доступен, или вы перемещаете каталог данных за пределы корня документа веб-сервера.
Где находится файл.htaccess, который предоставляет ownCloud?
Это тот?
/usr/share/owncloud/.htaccess
Содержимое этого файла:
ErrorDocument 403 /owncloud/core/templates/403.php
ErrorDocument 404 /owncloud/core/templates/404.php
<IfModule mod_php5.c>
php_value upload_max_filesize 1000M
php_value post_max_size 1000M
php_value memory_limit 512M
<IfModule env_module>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^.well-known/host-meta /public.php?service=host-meta [QSA,L]
RewriteRule ^.well-known/carddav /remote.php/carddav/ [R]
RewriteRule ^.well-known/caldav /remote.php/caldav/ [R]
RewriteRule ^apps/([^/]*)/(.*\.(css|php))$ index.php?app=$1&getfile=$2 [QSA,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
</IfModule>
Options -Indexes
2 ответа
Для работы htaccess необходимо активировать mod_rewrite.so. посмотреть здесь
В зависимости от вашего дистрибутива Linux, это делается по-разному.
Для Ubuntu это просто
root@VSRV0301 ~# a2enmod rewrite
Чтобы активировать htaccess для определенной папки вне www-корня, просто добавьте
<Directory /var/lib/owncloud> # or the folder owncloud lives in
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all <-I switched this from NONE*************
</Directory>
к вашему конфигу apache должен работать.
Я закончил тем, что уничтожил apache2 и owncloud 3.0 или что-то еще, и переустановил apache2 с owncloud 4.5.7. Это работает сейчас.
- Протрите Apache2 с этим постом:
остановка службы sudo apache2
- Удалить пакеты apache2 и зависимости:
sudo apt-get purge apache2 apache2-utils apache2.2-bin apache2-common sudo apt-get автоудаление --purge
- Если вы вручную изменили или установили что-то, apt может не удалить его. Проверьте, что осталось:
где apache2
- Посмотрите, что внутри этих каталогов, и если вы уверены, что хотите удалить их, удалите каталоги вручную. В моем случае:
sudo rm -Rf / etc / apache2 / usr / lib / apache2 / usr / include / apache2
- Сотрите собственное облако
sudo apt-get --purge удалить owncloud
- Попробуйте найти какие-нибудь затяжные файлы и удалить их
sudo rm -r / var / lib / owncloud
- Удалить базу данных MySQL
mysql -u root -p удалить базу данных owncloud;
- Удалить oc пользователей из mysql
Я забыл команды, попробую разобраться еще раз.
ownCloud 4.5.7, следуя части этой процедуры в xUbuntu 12.10 для фактической установки apt-get:
http://software.opensuse.org/download.html?project=isv:ownCloud:community&package=owncloud
и следующее для.htaccess и остальных
http://samiux.blogspot.co.at/2013/02/howto-owncloud-with-apache-on-ubuntu.html
Теперь все работает, данные больше не находятся в / var / lib / owncloud, а скорее в / var / www / owncloud. Файл /htaccess находится в / var / www / owncloud / data. Разрешения для всех файлов в наборе данных на www-data: WWW-данные