In questo tutorial spiegheremo come installare CachetHQ su un VPS CentOS 7.1 con MariaDB, PHP-FPM 5.6 e Nginx. CachetHQ è un sistema di pagine di stato open source basato su Laravel 5. Questa guida dovrebbe funzionare anche su altri sistemi VPS Linux, ma è stata testata e scritta per CentOS 7 VPS.
1. Accedi al tuo VPS tramite SSH
ssh user@myVPS
2. Aggiorna il sistema e installa i pacchetti necessari
[user]$ sudo yum -y upgrade [user]$ sudo yum install git curl
3. Installa MariaDB
MariaDB 5.5 viene fornito nel repository CentOS 7 predefinito, per installarlo basta eseguire:
[user]$ sudo yum install mariadb-server
Per avviare il servizio MariaDB e consentirne l'avvio all'avvio, eseguire i seguenti comandi:
[user]$ sudo systemctl start mariadb.service [user]$ sudo systemctl enable mariadb.service
Esegui il comando seguente per proteggere la tua installazione:
[user]$ sudo mysql_secure_installation
Successivamente, dobbiamo creare un database per la nostra istanza CachetHQ.
[user]$ mysql -uroot -p MariaDB [(none)]> CREATE DATABASE cachet; MariaDB [(none)]> GRANT ALL PRIVILEGES ON cachet.* TO 'cachetuser'@'localhost' IDENTIFIED BY 'cachetuser_passwd'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
4. Installa PHP e Nginx
Nginx non è disponibile nel repository CentOS 7 predefinito, quindi utilizzeremo il repository Nginx ufficiale:
[user]$ sudo rpm -UVh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm [user]$ sudo yum -y install nginx
Abilita il repository EPEL:
[user]$ sudo yum install epel-release
CentOS 7 viene fornito con PHP versione 5.4, per poter installare l'ultima versione di PHP, versione 5.6 abiliteremo il repository Webtatic:
[user]$ sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Installa PHP 5.6 e tutte le estensioni necessarie:
[user]$ sudo yum install php56w-cli php56w-process php56w-mcrypt php56w-mbstring php56w-common php56w-fpm php56w-xml php56w-opcache php56w-pecl-apcu php56w-pdo php56w-mysqlnd
5. Installa il compositore
Composer è un gestore delle dipendenze per PHP con il quale puoi installare pacchetti. Composer inserirà tutte le librerie e le dipendenze necessarie per il tuo progetto.
[user]$ curl -sS https://getcomposer.org/installer | php [user]$ sudo mv composer.phar /usr/local/bin/composer
6. Installa Node Gulp e Bower
Abbiamo bisogno di Gulp e Bower per costruire le risorse.
[user]$ sudo yum install -y nodejs npm [user]$ sudo npm install -g bower [user]$ sudo npm install -g gulp
7. Installa CachetHQ
Crea una directory principale per la tua applicazione.
[user]$ mkdir -p ~/CachetHQ
Clona il repository del progetto da GitHub:
[user]$ git clone https://github.com/cachethq/Cachet.git ~/CachetHQ [user]$ cd ~/CachetHQ
Installa tutte le dipendenze:
[user]$ composer install --no-dev -o
Copia il file .env.example in .env
[user]$ cp .env.example .env
generare e impostare la chiave dell'applicazione:
[user]$ php artisan key:generate
e modifica i valori appropriati:
[user]$ vim .env
APP_ENV=production APP_DEBUG=false APP_URL=http://localhost APP_KEY=SomeRandomString DB_DRIVER=mysql DB_HOST=localhost DB_DATABASE=cachet DB_USERNAME=cachetuser DB_PASSWORD=cachetuser_passwd CACHE_DRIVER=apc SESSION_DRIVER=file QUEUE_DRIVER=sync MAIL_DRIVER=smtp MAIL_HOST=mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null
Esegui le migrazioni del database e avvia il database con dati di esempio:
[user]$ php artisan migrate [user]$ php artisan db:seed
Costruisci risorse:
[user]$ npm install [user]$ bower install [user]$ gulp
8. Configura Nginx e PHP
Crea un nuovo pool PHP-FPM per il tuo utente:
[user]$ sudo vim /etc/php-fpm.d/your_user.conf
[your_user] user = your_user group = your_user listen = /var/run/php-fpm/your_user.sock listen.owner = your_user listen.group = your_user listen.mode = 0666 pm = ondemand pm.max_children = 5 pm.process_idle_timeout = 10s; pm.max_requests = 200 chdir = /
Non dimenticare di cambiare tuo_utente con il tuo nome utente.
Riavvia PHP-FPM
[user]$ sudo systemctl restart php-fpm.service
Genera certificato SSL:
[user]$ sudo mkdir -p /etc/nginx/ssl [user]$ cd /etc/nginx/ssl [user]$ sudo openssl genrsa -des3 -passout pass:x -out cachet.pass.key 2048 [user]$ sudo openssl rsa -passin pass:x -in cachet.pass.key -out cachet.key [user]$ sudo rm cachet.pass.key [user]$ sudo openssl req -new -key cachet.key -out cachet.csr [user]$ sudo openssl x509 -req -days 365 -in cachet.csr -signkey cachet.key -out cachet.crt
Quindi, crea un nuovo blocco del server Nginx:
[user]$ sudo vim /etc/nginx/sites-available/CachetHQ.conf
server { listen 443 default; server_name CachetHQ; ssl on; ssl_certificate /etc/nginx/ssl/cachet.crt; ssl_certificate_key /etc/nginx/ssl/cachet.key; ssl_session_timeout 5m; ssl_ciphers 'AES128+EECDH:AES128+EDH:!aNULL'; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; root /home/your_user/CachetHQ/public; index index.html index.htm index.php; charset utf-8; location / { try_files $uri $uri/ /index.php?$query_string; } location = /favicon.ico { access_log off; log_not_found off; } location = /robots.txt { access_log off; log_not_found off; } access_log /var/log/nginx/cachet.access.log; error_log /var/log/nginx/cachet.error.log; sendfile off; location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php-fpm/your_user.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors off; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } location ~ /\.ht { deny all; } } server { listen 80; server_name CachetHQ; add_header Strict-Transport-Security max-age=2592000; rewrite ^ https://$server_name$request_uri? permanent; }
Non dimenticare di cambiare tuo_utente con il tuo nome utente.
Infine, riavvia nginx:
[user]$ sudo systemctl restart nginx.service
Questo è tutto. Hai installato correttamente CachetHQ sul tuo Centos 7 VPS. Se non hai modificato l'utente e la password predefiniti prima del seeding, puoi accedere con "[email protected]" e "test123".
Per ulteriori informazioni su CachetHQ, fare riferimento al sito Web di CachetHQ.
Ovviamente non devi fare nulla di tutto ciò se utilizzi uno dei nostri servizi di hosting VPS CentOS, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di configurarlo per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS . Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.