Что такое ownCloud
ownCloud — это программа, которая позволяет вам создать ваше собственное облачное хранилище. В этом облаке вы можете хранить файлы, заметки, записи в календаре, расписания, списки задач и прочее. Вы являетесь администратором, то есть полностью контролируете облако — никто чужой не может посмотреть в него или что-либо скачать без вашего ведома.
Вы можете приглашать других пользователей, создавать ссылки для распространения отдельных файлов и давать им другим пользователям для скачивания. В ownCloud вы можете настроить права разных пользователей и предоставить им различные полномочия.
OwnCloud — это бесплатная программа с открытым исходным кодом, которая написана на PHP. Следовательно, она работает на веб-сервере Apache.
Давайте разберёмся, возможно ли установить ownCloud на Windows, точнее говоря на веб-сервер Apache запущенный на Windows. Если возможно, то как это сделать, а если невозможно, то какие ещё есть варианты.
В требованиях для работы ownCloud указаны только дистрибутивы Linux, операционной системы Windows нет среди поддерживаемых ownCloud.
В требования к веб-серверу сказано:
Apache 2.4 с prefork Multi-Processing Module (MPM) и mod_php
В документации Apache написаны стандартные MPM для различных операционных систем. То есть будет выбрана эта MPM если вы не сделали другой выбор во время компиляции:
Netware |
mpm_netware
|
OS/2 |
mpmt_os2
|
Unix |
prefork , worker , или event , зависит от возможностей платформы
|
Windows |
mpm_winnt
|
Источник: https://httpd.apache.org/docs/current/en/mpm.html
Как видим, в Windows по умолчанию используется mpm_winnt и, насколько я понимаю, невозможно выбрать prefork даже при компиляции.
То есть официально Windows не поддерживается и имеются требованиям к веб-серверу, которые в Windows невозможно удовлетворить.
Тем не менее я скачал архив с программой и попробовал запустить, вначале я получил сообщение:
This version of ownCloud is not compatible with PHP 7.3 You are currently running PHP 7.3.2.
Перевод:
Эта версия ownCloud не совместима с PHP 7.3 В настоящее время у вас запущена PHP 7.3.2.
Я не поленился, и откатил PHP до версии 7.2.
Сразу после этого я получил сообщение об ошибке:
ownCloud Server does not support Microsoft Windows.
Перевод:
Сервер ownCloud не поддерживает Microsoft Windows.
Вывод: «просто запустить» ownCloud на Windows не получится.
Возможные варианты:
Патч исходного кода для отключения проверки операционной системы
Можно изучить исходный код сервера ownCloud и пропатчить его таким образом, чтобы отключить проверку на операционную систему, где запущена ownCloud.
В результате можно получить результат в диапазоне от полной неработоспособности ownCloud — до обычной работоспособности.
Для этого вам нужен человек, который:
- разбирается в PHP
- знает чем отличается работа Apache на Windows от работы Apache на Linux.
Это вариант для энтузиастов, кому интересно разбираться в самых основах работы веб приложений и «хакать» их. У этого подхода есть минусы: необходимость всё повторять вновь после каждого обновления ownCloud. И главный минус — могут возникнуть ошибки в работе сервера ownCloud, причём эти ошибки могут быть неявными — проявляться только в определённых обстоятельствах. И что самое неприятное, при стечении неблагоприятных условий, может возникнуть ситуация, когда будут потеряны или не сохранены должным образом хранимые данные.
Установка ownCloud на Linux
Нормальный вариант (если ownCloud нужен в локальной сети): установить на компьютер Linux и туда установить ownCloud.
Если ownCloud нужен с доступом из Глобальной сети Интернет, то тогда лучший вариант это VPS хостинг с Linux на который установлена ownCloud.
К сожалению, приходится констатировать, что Apache на Windows не всегда может полностью заменить веб-сервер на Linux. ownCloud не единственная программа, которая может полноценно работать только на Linux, среди профессиональных, узкоспециальных, серверных и хакерских программ очень много таких, которые работают только в операционной системе Linux. Если вы профессиональный веб-мастер, то вы можете тестировать PHP скрипты и большинство движков в Apache на Windows, но вам также нужно начать знакомиться с Linux хотя бы по двум причинам:
- подавляющее большинство хостингов используют Linux и вам нужно понимать её специфику;
- если ваши сайты становятся популярными и требуют большой нагрузки на сервер, то вам нужно будет переходить с виртуальных хостингов на виртуальные частные сервера (VPS), в которых самым лучшим вариантом для работы является установка одного из дистрибутивов Linux.