Jak zainstalować SuiteCRM z Nginx na Ubuntu 16.04

SuiteCRM jest otworzyć źródło oprogramowanie CRM (zarządzanie relacjami z klientami), w oparciu o PHP. Jest to widelec z popularnego oprogramowania CRM 'SugarCRM', i stał się bardziej popularny, po 'SugarCRM' postanowił zatrzymać rozwój darmowej wersji. SuiteCRM został nominowany jako najlepszy oprogramowania open source CRM na BOSSIE 2015 i 2016.

W tym samouczku, Pokaże Ci krok po kroku jak zainstalować open source CRM 'SuiteCRM'. Oprogramowanie zostanie uruchomiona pod Nginx serwer sieci web z bazą danych SQLite i przy pomocy Ubuntu 16.04 systemu.

Co robimy

  1. Zainstalować serwer www Nginx
  2. Zainstalować i skonfigurować PHP-FPM
  3. Instalowanie i Konfigurowanie SQLite
  4. Pobierz i skonfiguruj SuiteCRM
  5. Instalator sieci Web SuiteCRM
  6. Ostatnie kroki

Wymagania wstępne

  • Ubuntu 16.04 Serwer
  • Uprawnienia użytkownika root

Krok 1 - Zainstalować serwer www Nginx

SuiteCRM jest to internetowe oprogramowanie, i potrzebuje serwera sieci web. Możemy użyć tego oprogramowania Apache lub Nginx. W tym samouczku, możemy używać Nginx serwer sieci web zamiast serwer WWW Apache.

Podłączyć do swojego serwera Ubuntu i aktualizacji repozytorium.

SSH [adres email protected]
sudo apt update

Teraz zainstalować Nginx serwer sieci web przy użyciu apt polecenia w następujący sposób.

apt-get install nginx -y

Po instalacji, Uruchom nginx i włącz go, aby automatycznie uruchomić każdy czas podczas startu systemu.

systemctl start nginx
systemctl Włącz nginx

Nginx serwer sieci web jest zainstalowana, i jest uruchomiona w obszarze domyślny port HTTP 80. To sprawdzić za pomocą polecenia netstat, lub można użyć curl, aby zobaczyć kod stanu HTTP.

netstat - plntu
curl - ja localhost

Install Nginx

Krok 2 - Zainstalować i skonfigurować PHP-FPM

SuiteCRM jest kompatybilny z wieloma wersjami PHP. W tym samouczku, możemy używać najnowszej wersji PHP 7.0 dla instalacji SuiteCRM.

Zainstalować PHP i PHP-FPM 7 wraz z innych wymaganych rozszerzeń za pomocą następującego polecenia apt.

apt-get install -y php7.0-fpm php7.0-mcrypt php7.0-imap php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0 json php7.0-intl php gruszka php7.0-dev php7.0 często php7.0-mbstring php7.0-zip php mydło libcurl3 curl

Po zakończeniu instalacji, Przejdź do katalogu konfiguracji PHP i edytować pliki php.ini dla konfiguracji 'cli' i 'fpm'.

CD /etc/php/7.0/

Edytowanie plików php.ini.

Vim cli/php.ini
Vim fpm/php.ini

Zmień wartość rozmiaru pliku max upload. SuiteCRM potrzebuje co najmniej 6MB, ale ustawiamy 100MB jako wartość.

upload_max_filesize = 100M

Uncomment ten specjalność grafika komputerowa (poniżej) i zmień wartość na 0.

CGI.fix_pathinfo=0

Dla sesji ścieżki konfiguracji, odkomentować linię poniżej.

session.save_path = "/var/lib/php/sessions"

To jest to. Zapisz zmiany i wyjdź.

Teraz, musimy utworzyć nowy katalog dla plików sesje PHP i zmienić właściciela katalogu 'www-data' użytkownika i grupy.

mkdir -p /var/lib/php/sessions
chown -R www-dane: www-/var/lib/php/sessions danych

Zakończeniu konfiguracji PHP i PHP-FPM. Teraz uruchom usługę i włączyć go, aby uruchomić każdy czas podczas startu systemu.

systemctl start php7.0-fpm
systemctl Włącz php7.0-fpm

Domyślnie w systemie Ubuntu, Plik wkładka zamiast przy użyciu portu systemu zostanie uruchomione PHP-FPM. To sprawdzić za pomocą poniżej polecenia netstat.

netstat -pl | grep php

I sprawdź wynik, co widzisz, jest podobne do co to jest wyświetlany w następujących zrzut ekranu.

Install PHP

Krok 3 - Instalowanie i Konfigurowanie SQLite

W tym kroku, będziemy instalować SQLite i skonfigurować hasło roota. Następnie skonfiguruj nową bazę danych dla instalacji SuiteCRM.

Zainstalować za pomocą poniżej polecenia apt MariaDB.

apt-get install -y serwer oraz SQLite klient

Po instalacji, Uruchom usługę i włączyć go, aby uruchomić każdy czas podczas startu systemu.

systemctl start mysql
systemctl Włącz mysql

Następny, Konfigurowanie SQLite hasło roota za pomocą polecenia 'mysql_secure_installation' jak poniżej.

mysql_secure_installation

Poprosi Cię o konfiguracji, 'Y' i naciśnij klawisz 'Enter'.

Set root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

MariaDB root password has been configured.

Now we will create a new database and user for SuiteCRM installation. Create a database named 'suitecrm_db', and a new user 'crmadmin' with password 'hakase-labs123'. Connect to the mysql shell and run the following mysql queries.

MySQL -u root -p
Type your password:
CREATE DATABASE suitecrm_db;
CREATE USER 'crmadmin'@'localhost' IDENTIFIED BY 'hakase-labs123';
GRANT ALL PRIVILEGES ON suitecrm_db.* TO 'crmadmin'@'localhost';
STRUMIEÑ UPRZYWILEJOWUJE;

Install and configure the MariaDB database

MariaDB database configuration for SuiteCRM installation has been completed.

Krok 4 - Pobierz i skonfiguruj SuiteCRM

W tym kroku, we will do some tasks that'll prepare the system for SuiteCRM installation. We will download the SuiteCRM source code, configure UFW Firewall, generate Letsencrypt certificates, and configure nginx virtual host for SuiteCRM.

- Download SuiteCRM Source Code

The suiteCRM source code is available on Github. Make sure the git command installed on your system. Or if you do not have a git package, install it with the apt command below.

apt install -y git

Now go to the '/opt' directory and clone the repository using the following git clone command.

CD /opt/
git clone https://github.com/salesagility/SuiteCRM.git suitecrm

Go to the suitecrm directory and create a new 'cache' directory. Then change the permission of some files and directories, i wreszcie, Musimy zmienić uprawnień własności do katalogu 'suitecrm', 'www-data' użytkownika i grupy.

CD/opt/suitecrm
mkdir -p /opt/suitecrm/cache
chmod -R 775 przesyłanie danych z pamięci podręcznej niestandardowe moduły themes config_override.php
chown www-dane: www-danych -R/opt/suitecrm

Download and install SuiteCRM

SuiteCRM kod źródłowy został pobrany.

- Skonfigurować zaporę UFW

Na Ubuntu, możemy używać ufw zapory. Otwórz nowe porty HTTP, HTTPS, i SSH przy użyciu ufw poleceń, jak pokazano poniżej.

UFW pozwala ssh
UFW pozwala http
UFW pozwala https

Teraz uruchomić zapory i umożliwić jej uruchomienie za każdym razem podczas uruchamiania systemu przy użyciu ufw włączyć polecenie.

UFW po

'Y' i naciśnij klawisz Enter, aby włączyć zaporę.

Configure UFW Firewall

Jeśli chcesz sprawdzić stan zapory, Użyj polecenie status ufw.

UFW stanu

A otrzymasz stan zapory, w tym jakie porty zostały dodane.

Firewall Status

- Generowanie certyfikatów Letsencrypt

W tym samouczku, SuiteCRM będzie używać protokołu HTTPS do bardziej bezpiecznego połączenia między klientem a serwerem. W tym celu, możemy używać darmowy certyfikat SSL z Letsencrypt.

Przed generowania plików certyfikatów, musimy zainstalować agenta klienta letsencrypt w systemie. Jest on dostępny w repozytorium Ubuntu, więc zainstalować go za pomocą poniżej polecenia apt.

apt-get install -y letsencrypt

Po zainstalowaniu letsencrypt, musimy zatrzymać usługę nginx przed generowania plików certyfikatu.

systemctl stop nginx

Teraz wygenerować pliki certyfikatu SSL za pomocą poniżej polecenia letsencrypt.

letsencrypt certonly--samodzielny -d suitecrm.hakase-labs.co

Uwaga: The --autonomiczny opcja będzie utworzyć tymczasowy serwer w systemie, więc musimy przestać Nginx serwer sieci web przed generowania plików certyfikatów.

Poprosi Cię o Twój adres e-mail do odnawiania powiadomień. Wpisz swój adres e-mail i kliknij 'OK'.

Create Let's Encrypt certificate

Dla układu Letsencrypt, Wybierz "Zgadzam się" i naciśnij Enter.

Accept license agreement

Nowy Letsencrypt SSL został wygenerowany w ' / etc/letsencrypt/live/domain.com' katalogu.

SSL certificate has been generated

- Konfiguracja Nginx wirtualnego hosta dla SuiteCRM

Przejdź do katalogu konfiguracji Nginx i utworzyć nowy plik wirtualnego hosta 'suitecrm' w katalogu stron dostępny.

CD/etc/nginx
Vim witryn dostępne/suitecrm

Pasta o następującej konfiguracji Nginx.

# Konfiguracji serwera - hakase-labs
server {
listen 80;
server_name suitecrm.hakase-labs.co;
# Automatically redirect to HTTPS
return 301 https://$host$request_uri;
}
# Nginx SSL for SuiteCRM
server {
server_name suitecrm.hakase-labs.co;
# Enable http2
listen 443 Http2 ssl;
# SSL Config
ssl_certificate /etc/letsencrypt/live/suitecrm.hakase-labs.co/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/suitecrm.hakase-labs.co/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
client_max_body_size 50M;
index index.php index.html index.htm;
root /opt/suitecrm;
location / {
root /opt/suitecrm;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
error_log /var/log/nginx/suitecrm.irsyadf.me.error.log;
location = /50x.html {
root /var/www/html;
}
## Images and static content is treated different
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml|svg|wgoff2)$ {
access_log off;
expires max;
root /opt/suitecrm;
}
location ~ .php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /.ht {
deny all;
}
}

Zapisz i Zamknij.

Now activate the virtual host, test the configuration, and make sure there is no error. Then restart the web server.

ln -s /etc/nginx/sites-available/suitecrm /etc/nginx/sites-enabled/
Nginx -t
systemctl restart nginx

Configure the virtualhost file

System configuration for SuiteCRM installation has been completed.

Krok 5 - Instalator sieci Web SuiteCRM

Open your web browser and type the SuiteCRM URL in the address bar, Kopalnia jest suitecrm.hakase-labs.co

You will be redirected to the HTTPS connection and the install.php page.

On the page that appears, you will see the GNU AFFERO License - check on the 'I Accept' and click 'Next'.

SuiteCRM Installer

Now you will get the page about system environment for SuiteCRM installation.

Make sure all results are 'OK' as shown in the picture below.

System check

Click 'Next' to continue.

Next comes database and admin user configuration. Type your database info, dbname 'suitecrm_db', dbuser 'crmadmin' with password 'hakase-labs123'. And type your admin user, hasło, and email as shown below.

Database and site configuration

Scroll to the bottom and click 'Next' to continue installing SuiteCRM.

Wait for a moment for the installation, and when it's complete, you will be redirected to the login page as below.

SuiteCRM login

Type your admin user and password, and click the 'Log in' button.

Now you'll be able to see the default SuiteCRM dashboard.

SuiteCRM dashboard

SuiteCRM has been installed with Nginx web server on the Ubuntu 16.04 systemu.

Krok 6 - Ostatnie kroki

For this last step, we will create a new Cron job under www-data user.

Run the command below to add a new Cron job.

sudo crontab -e -u www-data

Paste Cron script configuration below.

*    *    *    *    *     cd /opt/suitecrm; php -f cron.php > /dev/null 2>&1

Zapisz i Zamknij. Then restart the Cron service.

systemctl restart cron

The SuiteCRM installation on Ubuntu 16.04 has been completed.

Odwołanie

Źródła