GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Invoice Ninja su CentOS 7

In questo tutorial, ti mostreremo come installare e configurare Invoice Ninja sul tuo CentOS 7. Per chi non lo sapesse, Invoice Ninja è un programma gratuito e open source software applicativo basato sul Web che può essere utilizzato per fatturazione, pagamenti, monitoraggio del tempo e molti altri. È la soluzione migliore per la fatturazione e la fatturazione dei clienti. Puoi creare e inviare facilmente fatture online in pochi secondi. Invoice Ninja ti consente di creare il tuo possedere una fattura personalizzata e mostrare una fattura in tempo reale come file PDF.

Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il ​​tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo ' ai comandi per ottenere i privilegi di root. Ti mostrerò l'installazione passo passo di Invoice Ninja su un server CentOS 7.

Caratteristiche di Invoice Ninja

  • Crea attività di lavoro e monitora il tempo
  • Crea fatture online in pochi secondi
  • Invia fatture e ricevi pagamenti online
  • Design mobile responsive
  • Integra oltre 45 gateway di pagamento
  • 10 nuovi modelli di fattura
  • Visualizza fattura in tempo reale .PDF creazione
  • Aggiungi il logo della tua azienda alle fatture
  • Le quotazioni si convertono in fatture
  • Fatturazione automatica e fatture ricorrenti
  • Impostazioni fiscali multiple
  • Più valute supportate
  • Portale clienti per visualizzare le fatture
  • Avvisi quando le fatture vengono pagate
  • Imposta le date di scadenza del pagamento della fattura
  • Spese di importazione e configurazione dei fornitori

Installa Invoice Ninja su CentOS 7

Passaggio 1. Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato.

yum clean all
yum -y install epel-release
yum -y update

Passaggio 2. Installa il server LEMP.

È richiesto uno stack server CentOS 7 LEMP. Se non hai installato un LEMP, puoi seguire la nostra guida qui. Inoltre, installa i moduli PHP richiesti:

yum install install php70w-fpm php70w-cli php70w-pear php70w-gd php70w-xml php70w-curl php70w-gmp php70w-pdo php70w-mysql php70w-zip php70w-mbstring php70w-mcrypt

Una volta terminata l'installazione, dovrai modificare il file di configurazione php.ini:

nano /etc/php.ini

Cambia la seguente riga:

cgi.fix_pathinfo=0

Passaggio 3. Configurazione di MariaDB per Invoice Ninja.

Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando mysql_secure_installation sceneggiatura. dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MariaDB:

mysql_secure_installation

Configuralo in questo modo:

- Set root password? [Y/n] y
- 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

Successivamente, dovremo accedere alla console MariaDB e creare un database per Invoice Ninja. Esegui il seguente comando:

mysql -u root -p

Questo ti chiederà una password, quindi inserisci la tua password di root MariaDB e premi Invio. Una volta effettuato l'accesso al server del database, devi creare un database per Installazione di fattura Ninja:

MariaDB [(none)]> CREATE DATABASE ninja_db;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON ninja_db.* TO 'ninja'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Passaggio 4. Configura PHP-FPM.

Dovrai configurare il pool PHP-FPM per gli utenti Nginx:

nano /etc/php-fpm.d/www.conf

Cambia le seguenti righe:

user = nginx
group = nginx
listen = /var/run/php/php-fpm.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

Salva il file ed esci dall'editor di testo.

Avanti, dovrai creare una nuova directory per la sessione PHP e il file socket:

mkdir -p /var/lib/php/session
mkdir -p /var/run/php/
chown -R nginx:nginx /var/lib/php/session/
chown -R nginx:nginx /var/run/php/

Successivamente, avvia PHP-FPM e abilitalo all'avvio all'avvio utilizzando i seguenti comandi:

systemctl start php-fpm
systemctl enable php-fpm

Passaggio 5. Installazione di Invoice Ninja.

La prima cosa da fare è andare alla pagina di download di Invoice Ninja e scaricare l'ultima versione stabile di Invoice Ninja:

cd /var/www/html/
git clone https://github.com/hillelcoren/invoice-ninja.git ninja

Devi installare il compositore:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer

Successivamente, installa tutte le dipendenze di Invoice Ninja usando il compositore:

cd /var/www/html/ninja
composer install --no-dev -o

Una volta completata l'installazione, rinomina il file .env e apporta alcune modifiche:

mv .env.example .env
nano .env

Cambia i valori del database in base al tuo database:

DB_DATABASE=ninja_db
DB_USERNAME=ninja
DB_PASSWORD=Y0urPa55w0rd

Salva il file ed esci dall'editor di testo. Quindi, modifica la configurazione del database nella directory config:

nano config/database.php

Cambia le seguenti righe:

'database'  => env('DB_DATABASE', 'ninja_db'),
'username'  => env('DB_USERNAME', 'ninja'),
'password'  => env('DB_PASSWORD', 'Y0urPa55w0rd'),

Salva il file ed esci dall'editor di testo e prepara il database con il seguente comando:

php artisan migrate

Ti verrà chiesto di eseguire il comando, digita "yes" e premi Invio.

Quindi, semina il database con tutti i record come mostrato di seguito:

php artisan db:seed

Esegui il comando seguente per generare la chiave dell'applicazione e annota questa chiave dell'applicazione:

php artisan key:generate

Successivamente, modifica app.php file con un editor di testo nano:

nano config/app.php

Aggiungi la chiave come mostrato di seguito:

'key' => env('APP_KEY', 'y0urGenerated Key'),

Salva e chiudi il file cambia anche i permessi di alcune cartelle:

chown -R nginx:nginx /var/www/html/ninja/

Passaggio 6. Configura Nginx per Invoice Ninja.

Crea un certificato SSL e crea una nuova configurazione di host virtuale per Invoice Ninja:

mkdir -p /etc/nginx/cert/openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/ninja.crt -keyout /etc/nginx/cert/ninja.keychmod 600 /etc/nginx/cert/*

Quindi, crea un nuovo file di configurazione dell'host virtuale all'interno di /etc/nginx/ directory:

nano /etc/nginx/conf.d/ninja.conf

Aggiungi le seguenti righe:

server {
    listen  80;
    server_name idroot.us;
    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^ https://$server_name$request_uri? permanent;
}

server {
    listen  443 default;
    server_name 192.168.15.23;
    ssl on;
    ssl_certificate     /etc/nginx/cert/ninja.crt;
    ssl_certificate_key /etc/nginx/cert/ninja.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 /var/www/html/ninja/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 and Error Log for Invoice Ninja
    access_log  /var/log/nginx/ininja.access.log;
    error_log   /var/log/nginx/ininja.error.log;

    sendfile off;

    # Handle PHP Applications
    location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php/php-fpm.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;
       }
    }

Salva e chiudi il file. Riavvia il servizio Nginx per rendere effettive le modifiche:

systemctl restart nginx

Passaggio 7. Configura FirewallD Invoice Ninja.

Prima di accedere all'interfaccia web di Invoice Ninja, dovrai consentire il servizio HTTP e HTTPS tramite firewalld:

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload

Passaggio 8. Accesso a Invoice Ninja.

Invoice Ninja sarà disponibile sulla porta HTTP 80 per impostazione predefinita. Apri il tuo browser preferito e vai a http://your-domain.com/ o http://your-server-ip e completa i passaggi richiesti per completare l'installazione.

Congratulazioni! Hai installato correttamente Invoice Ninja. Grazie per aver utilizzato questo tutorial per l'installazione di Invoice Ninja sul sistema CentOS 7. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare il sito Web ufficiale di Invoice Ninja .


Cent OS
  1. Come installare PHP 7, 7.2 e 7.3 su CentOS 7

  2. Come installare Java 11 e 12 su CentOS 7

  3. Come installare Wine 4.0 su CentOS 7

  4. Come installare Invoice Ninja su Ubuntu 18.04

  5. Come installare Invoice Ninja su Debian 9

Come installare R su CentOS 8

Come installare Invoice Ninja su Ubuntu 16.04

Come installare Invoice Ninja su CentOS 7

Come installare Invoice Ninja su Ubuntu 20.04

Come installare Invoice Ninja su CentOS 8

Come installare Invoice Ninja su Debian 10