如何在CentOS 8 Linux上安装SuiteCRM
在本指南中,很好地讨论了在CentOS 8 Linux系统上SuiteCRM的安装。 SuiteCRM是由SalesAgility团队开发和维护的开源企业级CRM应用程序。该产品最初是SugarCRM社区版的分支。
SuiteCRM将管理业务流程,客户数据,对业务信息的访问,客户交互以及自动销售,以获得更好的客户和服务交付体验。
SugarCRM正在积极开发中,并且在核心产品中添加了许多常规功能和改进,使其成为最佳的开源CRM产品。它与专有的CRM供应商竞争,例如SugarCRM,Salesforce和Microsoft。
安装SuiteCRM CentOS 8要求
PHPNginx Web服务器MySQL/MariaDB数据库服务器具有sudo特权的用户
请按照以下步骤安装和开始使用SuiteCRM来管理业务流程,客户数据,对业务信息的访问,客户交互以及自动进行销售等
更新系统
我建议我们始终在更新的系统上开始工作:
sudo dnf -y update
安装PHP
第一步是确保服务器上已安装PHP和所需的扩展名。
sudo dnf -y install yum-utils sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm sudo dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm dnf module reset php sudo dnf module install php:remi-7.3 sudo yum -y install wget php php-{pear,cgi,common,curl,mbstring,gd,mysqlnd,gettext,bcmath,json,xml,fpm,intl,zip,imap}
要确认已安装的php版本,请使用命令php -v
$php -v PHP 7.3.13 (cli) (built: Dec 17 2019 10:29:15) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.3.13, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.3.13, Copyright (c) 1999-2016, by Zend Technologies
增加php超时和最大文件上传大小:
$sudo vim /etc/php.ini upload_max_filesize = 20M max_execution_time = 120
设置正确的用户以运行php-fpm服务:
$sudo vim /etc/php-fpm.d/www.conf user = nginx group = nginx listen.mode = 0660
启动并启用php-fpm服务:
sudo systemctl enable --now php-fpm
确认服务已启动,没有任何错误:
$systemctl status php-fpm ● php-fpm.service - The PHP FastCGI Process Manager Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2017-01-04 21:07:19 EAT; 39s ago Main PID: 1116 (php-fpm) Status: "Processes active: 0, idle: 5, Requests: 0, slow: 0, Traffic: 0req/sec" Tasks: 6 (limit: 11512) Memory: 21.0M CGroup: /system.slice/php-fpm.service ├─1116 php-fpm: master process (/etc/php-fpm.conf) ├─1117 php-fpm: pool www ├─1118 php-fpm: pool www ├─1119 php-fpm: pool www ├─1120 php-fpm: pool www └─1121 php-fpm: pool www Jan 04 21:07:19 centos8.novalocal systemd[1]: Starting The PHP FastCGI Process Manager... Jan 04 21:07:19 centos8.novalocal systemd[1]: Started The PHP FastCGI Process Manager.
安装MariaDB和Nginx Web服务器
对于此设置,我们将使用Nginx作为SuiteCRM的Web服务器。
sudo dnf -y install nginx
有关数据库安装的信息,请参阅指南:
如何在CentOS 8上安装MariaDB数据库服务器
安装数据库服务器后,我们需要为SuiteCRM创建一个"数据库"。
$mysql -u root -p CREATE DATABASE suitecrm; GRANT ALL ON suitecrm.* TO theitroad@localhost IDENTIFIED by "StrongDBPassword"; FLUSH PRIVILEGES; QUIT
在CentOS 8上安装SuiteCRM
检查SuiteCRM发行页面以获取最新版本。在撰写本文时,最新版本是v7.11.10.
export VER="7.11.10" wget https://github.com/salesagility/SuiteCRM/archive/v${VER}.tar.gz tar xvf v${VER}.tar.gz
安装作曲家:
wget https://getcomposer.org/installer -O composer-installer.php sudo php composer-installer.php --filename=composer --install-dir=/usr/local/bin composer --version
运行composer install:
cd SuiteCRM-${VER} composer install
然后,我们需要创建一个目录来托管SuiteCRM Web数据:
cd .. sudo mkdir /var/www/html/suitecrm sudo rsync -avv SuiteCRM-${VER}//var/www/html/suitecrm
将/var/www/html/sduitecrm irectory的所有权更改为Web用户:
sudo chown -R nginx:nginx /var/www/html/suitecrm sudo chmod -R 766 /var/www/html/suitecrm sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/suitecrm(/.*)?" sudo restorecon -Rv /var/www/html/suitecrm/
配置Nginx
$sudo vim /etc/nginx/conf.d/suitecrm.conf server { server_name crm.example.com; client_max_body_size 20M; root /var/www/html/suitecrm; location/{ try_files $uri /index.php; } location ~ \.php${ try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } error_log /var/log/nginx/suitecrm_error.log; access_log /var/log/nginx/suitecrm_access.log; location ~ /\.ht { deny all; } }
完成后,启动nginx和php-fpm服务:
sudo systemctl restart nginx php-fpm sudo systemctl enable nginx php-fpm
在防火墙中允许http端口:
sudo firewall-cmd --add-service=http --permanent sudo firewall-cmd --reload
访问SuiteCRM Web界面
打开我们喜欢的浏览器,然后转到" http://crm.example.com"
勾选我接受以接受许可协议条款。
单击下一步继续
确保所有检查均返回"确定",然后单击"下一步"继续。
在下一页上提供:
配置数据库:(选择使用现有用户选项)
Database Name: suitcrm_db Host Name: localhost User: suitecrm_user Password: db-user-password
配置识别管理用户
SuiteCRM Application Admin Name: Admin SuiteCRM Admin User Password: Admin-user-password Re-enter SuiteCRM Admin User Password:
SuiteCRM实例的URL:在Nginx上配置的URL
安装完成后,我们将获得一个登录页面。
完成后,为网络用户设置cron以运行SuiteCRM Scheduler,
sudo crontab -e -u nginx
将以下行添加到crontab文件中:
* * * * * cd /var/www/html/suitecrm; php -f cron.php > /dev/null 2>&1