如何在CentOS 7上安装Rainloop Webmail

・7 分钟阅读

使用不同的系统?

rainLoop是一个简单,现代和快速的基于web的电子邮件客户端,RainLoop源代码托管于gitHub ,本指南将向你展示如何在新的Centos7实例上安装RainLoop。

要求

  • Nginx
  • PHP版本5.4及其上,以及以下扩展:
    • cURL
    • iconv
    • json
    • libxml
    • dom
    • openssl
    • DateTime
    • PCRE
    • SPL
    • 可选的PHP扩展:PDO (MySQL/PostgreSQL/SQLite)(用于联系人)

检查CentOS版本。


cat /etc/centos-release
# CentOS Linux release 7.4.1708 (Core)

使用sudo访问创建一个新的non-root用户帐户,并且切换到它。


useradd -c"John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

注:将johndoe替换为你的用户名。

设置时区。


timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

确保你的系统是最新的。


sudo yum update -y

安装完成本教程所需的软件包。


sudo yum install -y curl git wget vim unzip bash-completion 

禁用SELinux 。

 
sudo setenforce 0

 

启用EPEL存储库。


sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

安装PHP,必要的PHP扩展,MariaDB和Nginx,

设置Webstatic YUM repo。


sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

下载并安装PHP 7.0和所需的PHP扩展。


sudo yum install -y php72w php72w-cli php72w-fpm php72w-curl php72w-json php72w-mbstring php72w-mysql php72w-pgsql php72w-sqlite3 php72w-common php72w-xml

检查版本。

 
php -v

 

启动并启用php-fpm


sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

安装MariaDB 。


sudo vim /etc/yum.repos.d/MariaDB.repo

# Copy/paste this to the /etc/yum.repos.d/MariaDB.repo file

[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

sudo yum install -y MariaDB-server MariaDB-client

检查版本。

 
mysql --version

 

运行mysql_secure_installation脚本以提高MariaDB安装的安全性。


sudo mysql_secure_installation

以root用户身份登录到MariaDB 。


mysql -u root -p
# Enter password:

创建新的MariaDB数据库和用户,并记住凭据。


CREATE DATABASE dbname;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON `dbname`.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
EXIT;

安装Nginx 。


sudo yum install -y nginx

检查版本。

 
sudo nginx -v

 

启动并启用Nginx 。


sudo systemctl start nginx.service
sudo systemctl enable nginx.service

为RainLoop配置Nginx ,运行 sudo vim /etc/nginx/conf.d/rainloop.conf 并添加以下配置。


server {

 listen 80;

 server_name example.com;
 root /var/www/rainloop;

 index index.php;

 location / {
 try_files $uri $uri/ /index.php?$query_string;
 }

 location ~ .php$ {
 fastcgi_index index.php;
 fastcgi_split_path_info ^(.+.php)(.*)$;
 fastcgi_keep_conn on;
 include fastcgi_params;
 fastcgi_pass 127.0.0.1:9000;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 }

 location ~ /.ht {
 deny all;
 }

 location ^~ /data {
 deny all;
 }

}

测试配置。

 
sudo nginx -t

 

重新加载Nginx 。


sudo systemctl reload nginx.service

安装RainLoop

创建文档root 。


sudo mkdir -p /var/www/rainloop

/var/www/rainloop目录的所有权更改为johndoe


sudo chown -R johndoe:johndoe /var/www/rainloop

下载最新版本的RainLoop并解压缩它。


cd /var/www/rainloop
wget http://www.rainloop.net/repository/webmail/rainloop-latest.zip
unzip rainloop-latest.zip -d /var/www/rainloop
rm rainloop-latest.zip

/var/www/rainloop目录的所有权更改为nginx


sudo chown -R nginx:nginx /var/www/rainloop

运行sudo vim/etc/php-fpm.d/www.conf并将用户和组设置为nginx ,最初,它被设置为apache 。


sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

重新启动php-fpm服务。


sudo systemctl restart php-fpm.service

在你喜欢的浏览器中打开http://example.com/?admin,并且登录配置RainLoop ,默认登录名为admin,密码为12345

Anne655 profile image