Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
comet:building-from-source [2018/01/06 08:42] levhav [Собираем из исходных кодов] |
comet:building-from-source [2019/01/04 18:23] levhav [Запуск] |
||
---|---|---|---|
Строка 3: | Строка 3: | ||
====== Установка ====== | ====== Установка ====== | ||
+ | |||
+ | Рекомендую использовать [[https://galaxy.ansible.com/CppComet/CppComet-ansible-role/|роль для ansible-galaxy]], а если использование ansible для установки не подходит то следуйте инструкциями в этой статье. | ||
Рекомендуемые ОС ubuntu, debian, centos | Рекомендуемые ОС ubuntu, debian, centos | ||
+ | |||
+ | Для debian 9 | ||
<code bash> | <code bash> | ||
apt-get update | apt-get update | ||
- | apt-get install cmake make cpp gcc libssl-dev g++ nginx libmysqlclient-dev mysql-server mysql-client flex mailutils uuid-dev git | + | apt-get install cmake make cpp gcc libssl-dev g++ nginx pkg-config libmariadbclient-dev-compat mysql-client flex mailutils uuid-dev git |
</code> | </code> | ||
+ | |||
+ | Если не получится поставить пакет libmariadbclient-dev-compat то попробуйте с пакетом libmariadbclient-dev | ||
====== Собираем из исходных кодов ====== | ====== Собираем из исходных кодов ====== | ||
Строка 16: | Строка 22: | ||
cmake . | cmake . | ||
make | make | ||
+ | make install | ||
</code> | </code> | ||
- | Если получим ошибку CMAKE_MINIMUM_REQUIRED то значит надо [[https://cmake.org/install/|установить более новую версию CMake]] | + | Если возникли ошибки смотрите список вероятных проблем в низу страницы. |
- | <code bash> | + | |
- | CMake Error at CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED): | + | |
- | CMake 3.2 or higher is required. You are running version 3.0.2 | + | |
- | </code> | + | |
- | + | ||
- | Для установки cmake-3.5.2 нужно выполнить следующие команды | + | |
- | <code bash> | + | |
- | sudo apt-get install build-essential | + | |
- | wget http://www.cmake.org/files/v3.5/cmake-3.5.2.tar.gz | + | |
- | tar xf cmake-3.5.2.tar.gz | + | |
- | cd cmake-3.5.2 | + | |
- | ./configure | + | |
- | make | + | |
- | </code> | + | |
- | + | ||
- | а потом снова вернуться к папке с файлами comet сервера и ещё раз выполнить | + | |
- | <code bash> | + | |
- | cmake . | + | |
- | make | + | |
- | </code> | + | |
====== Настройки ====== | ====== Настройки ====== | ||
Строка 72: | Строка 59: | ||
Запуск в консольном режиме | Запуск в консольном режиме | ||
<code sh> | <code sh> | ||
- | ./cpp_comet | + | ./cppcomet |
</code> | </code> | ||
Запуск в режиме демона | Запуск в режиме демона | ||
Строка 86: | Строка 73: | ||
port = 8087 | port = 8087 | ||
</code> | </code> | ||
- | + | , | |
- | После запуска комет сервера если открыть адрес ( ВашДомен.com:8087 ) на котором должен быть комет сервер то должна открыться страница комет сервера. Если страница с приветсвием комет сервера открылась успешно то можно попробовать подключиться из javascript api. Для этого при подключении надо задать параметр node и если у вас port установлен не как 80 то надо указать ещё и порт для подключения. | + | После запуска комет сервера если открыть адрес ( ВашДомен.com:8087 ), на котором должен быть комет сервер то должна открыться страница комет сервера. Если страница с приветсвием комет сервера открылась успешно то можно попробовать подключиться из javascript api. Для этого при подключении надо задать параметр node и если у вас port установлен не как 80, то надо указать ещё и порт для подключения. |
<code javascript> | <code javascript> | ||
Строка 99: | Строка 86: | ||
Для того чтоб настроить работу комет сервера на одной машине с другим сервером. Или просто иметь возможность работы не только по http но и по https надо настроить реверс прокси. | Для того чтоб настроить работу комет сервера на одной машине с другим сервером. Или просто иметь возможность работы не только по http но и по https надо настроить реверс прокси. | ||
- | <note tip>Если есть желание то в качестве реверс прокси для websockets можно настроить не nginx а apache2 или что то ещё. Если не получается настроить nginx то можно попробовать найти в гугле другие примеры по запросу "как настроить реверс прокси для websockets"</note> | + | <note tip>Если есть желание то в качестве реверс прокси для websockets можно настроить не nginx а apache2 или что-то ещё. Если не получается настроить nginx, то можно попробовать найти в гугле другие примеры по запросу "как настроить реверс прокси для websockets"</note> |
Ниже приведён пример конфигурации nginx для проксирования трафика до комет сервера с /comet-server на комет сервер запущенный на порту 82 и всего остального трафика на веб сервер запущенном на порту 8080 | Ниже приведён пример конфигурации nginx для проксирования трафика до комет сервера с /comet-server на комет сервер запущенный на порту 82 и всего остального трафика на веб сервер запущенном на порту 8080 | ||
Строка 190: | Строка 177: | ||
</file> | </file> | ||
- | ====== Возможные проблемы после установки ====== | + | ====== Возможные проблемы после при сборке ====== |
+ | Ошибка <code>GCC version must be at least 4.9!</code> означает, что вам надо установить gcc как минимум 4.9 | ||
+ | |||
+ | [[https://askubuntu.com/questions/428198/getting-installing-gcc-g-4-9-on-ubuntu/507068#507068|Инструкция для ubuntu по установки gcc 4.9]] | ||
+ | |||
+ | |||
+ | ====== Возможные проблемы после установки ====== | ||
===== Не правильные опции при подключении ===== | ===== Не правильные опции при подключении ===== | ||
- | Обратите внимание на то какие значения параметра port указаны в секциях [ws] и [cometql] именно на этих портах комет сервер будет ожидать входящие подключения. | + | Обратите внимание на то, какие значения параметра port указаны в секциях [ws] и [cometql] именно на этих портах комет сервер будет ожидать входящие подключения. |
В шаблоне comet.ini поставляемом в репозитории параметр port для подключений из JavaScrip api выставлен в 8087 | В шаблоне comet.ini поставляемом в репозитории параметр port для подключений из JavaScrip api выставлен в 8087 | ||
Строка 205: | Строка 198: | ||
<code PHP>$link = mysqli_connect("example.ru", "root", "", "CometQL_v1", 3300);</code> | <code PHP>$link = mysqli_connect("example.ru", "root", "", "CometQL_v1", 3300);</code> | ||
- | Так же обратите внимание на то что надо указывать имя базы данных CometQL_v1, оно символизирует версию апи и вероятно потом выйдет версия CometQL_v2 и можно будет при подключении выбирать версию для работы. | + | Так же обратите внимание на то что надо указывать имя базы данных CometQL_v1, оно символизирует версию апи и, вероятно, потом выйдет версия CometQL_v2 и можно будет при подключении выбирать версию для работы. |