РаинЛооп је једноставан, модеран и брз клијент е-поште заснован на вебу. РаинЛооп изворни код се налази на Гитхуб-у . Овај водич ће вам показати како да инсталирате РаинЛооп на нову ФрееБСД 12 Вултр инстанцу.
Захтеви
- Веб сервер: Апацхе, Нгинк, лигхттпд или други са подршком за ПХП. Користимо Нгинк.
- ПХП верзија 5.4 и новије
- ПХП екстензије:
cURL, iconv, json, libxml, dom, openssl, DateTime, PCRE,SPL
- Опционо: ПДО (МиСКЛ/ПостгреСКЛ/СКЛите) ПХП проширење (за контакте)
Пре него што почнете
Проверите верзију ФрееБСД-а.
uname -ro # FreeBSD 12.0-RELEASE
Уверите се да је ваш ФрееБСД систем ажуриран.
freebsd-update fetch install pkg update && pkg upgrade -y
Инсталирајте потребне пакете.
pkg install -y sudo vim unzip curl wget bash socat git
Креирајте нови кориснички налог са жељеним корисничким именом. Користићемо johndoe.
adduser # Username: johndoe # Full name: John Doe # Uid (Leave empty for default): <Enter> # Login group [johndoe]: <Enter> # Login group is johndoe. Invite johndoe into other groups? []: wheel # Login class [default]: <Enter> # Shell (sh csh tcsh nologin) [sh]: bash # Home directory [/home/johndoe]: <Enter> # Home directory permissions (Leave empty for default): <Enter> # Use password-based authentication? [yes]: <Enter> # Use an empty password? (yes/no) [no]: <Enter> # Use a random password? (yes/no) [no]: <Enter> # Enter password: your_secure_password # Enter password again: your_secure_password # Lock out the account after creation? [no]: <Enter> # OK? (yes/no): yes # Add another user? (yes/no): no # Goodbye!
Покрените visudoкоманду и скините коментар са %wheel ALL=(ALL) ALLлиније да бисте омогућили члановима wheelгрупе да изврше било коју команду.
visudo # Uncomment by removing hash (#) sign # %wheel ALL=(ALL) ALL
Сада се пребаците на свог новокреираног корисника помоћу su.
su - johndoe
НАПОМЕНА: Замените johndoeсвојим корисничким именом.
Подесите временску зону.
sudo tzsetup
Инсталирајте ПХП и потребне ПХП екстензије
Инсталирајте ПХП, као и неопходна ПХП екстензије.
sudo pkg install -y php72 php72-mbstring php72-tokenizer php72-pdo php72-pdo_mysql php72-openssl php72-hash php72-json php72-phar php72-filter php72-zlib php72-dom php72-xml php72-xmlwriter php72-xmlreader php72-pecl-imagick php72-curl php72-session php72-ctype php72-iconv php72-gd php72-simplexml php72-zip php72-filter php72-tokenizer php72-calendar php72-fileinfo php72-intl php72-phar php72-soap php72-xmlrpc php72-opcache php72-mysqli php72-bcmath php72-gmp
Проверите верзију.
php --version # PHP 7.2.19 (cli) (built: Jun 20 2019 01:25:01) ( NTS ) # Copyright (c) 1997-2018 The PHP Group # Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
Софт-линк php.ini-productionдо php.ini.
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Омогућите и покрените ПХП-ФПМ.
sudo sysrc php_fpm_enable=yes sudo service php-fpm start
Инсталирајте МариаДБ и креирајте базу података
Инсталирајте МариаДБ.
sudo pkg install -y mariadb102-client mariadb102-server
Проверите верзију.
mysql --version # mysql Ver 15.1 Distrib 10.2.24-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1
Покрените и омогућите МариаДБ.
sudo sysrc mysql_enable="yes" sudo service mysql-server start
Покрените mysql_secure_installationскрипту да бисте побољшали безбедност своје МариаДБ инсталације.
sudo mysql_secure_installation
Пријавите се на МариаДБ као роот корисник.
mysql -u root -p # Enter password:
Креирајте нову МариаДБ базу података и корисника. Запамтите акредитиве за овог новог корисника.
CREATE DATABASE dbname; GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; exit;
Инсталирајте и конфигуришите Нгинк
Инсталирајте Нгинк.
sudo pkg install -y nginx
Проверите верзију.
nginx -v # nginx version: nginx/1.14.2
Омогућите и покрените Нгинк.
sudo sysrc nginx_enable=yes sudo service nginx start
Покрените sudo vim /usr/local/etc/nginx/rainloop.confи подесите Нгинк за Раинлооп.
server { listen 80; listen [::]:80; server_name example.com; root /usr/local/www/rainloop; index index.php; location / { try_files $uri $uri/ /index.php?$query_string; } location ^~ /data { deny all; } location ~ \.php$ { try_files $uri =404; include fastcgi_params; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_keep_conn on; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; } }
Сачувајте датотеку и изађите.
Сада морамо да укључимо rainloop.confу главну nginx.confдатотеку.
Покрените sudo vim /usr/local/etc/nginx/nginx.confи додајте следећу линију у http {}блок.
include rainloop.conf;
Тестирајте конфигурацију.
sudo nginx -t
Поново учитај Нгинк.
sudo service nginx reload
Инсталирајте РаинЛооп
Направите основни директоријум документа.
sudo mkdir -p /usr/local/www/rainloop
Промените власништво над /usr/local/www/rainloopдиректоријумом у johndoe.
sudo chown -R johndoe:johndoe /usr/local/www/rainloop
Преузмите најновије издање РаинЛооп-а и распакујте га.
cd /usr/local/www/rainloop wget http://www.rainloop.net/repository/webmail/rainloop-latest.zip unzip rainloop-latest.zip -d /usr/local/www/rainloop rm rainloop-latest.zip
Промените власништво над /usr/local/www/rainloopдиректоријумом у www.
sudo chown -R www:www /usr/local/www/rainloop
Идите до http://example.com/?adminу свом омиљеном претраживачу и пријавите се да бисте конфигурисали РаинЛооп веб пошту. Подразумевано име за пријаву је, adminа лозинка је 12345.