Kaip įdiegti „Invoice Ninja“ „CentOS 7“.

Įvadas

Invoice Ninja yra nemokama atvirojo kodo žiniatinklio bazių taikomoji programinė įranga, kurią galima naudoti sąskaitoms faktūroms išrašyti, mokėjimams, laiko stebėjimui ir daugeliui kitų dalykų. Tai geriausias sprendimas klientams išrašyti sąskaitas ir atsiskaityti. Galite lengvai sukurti ir išsiųsti sąskaitas internetu per kelias sekundes. Invoice Ninja leidžia jums sukurti savo tinkintą sąskaitą faktūrą ir rodyti tiesioginę sąskaitą kaip PDF failą.

Šioje pamokoje paaiškinsiu, kaip įdiegti „Invoice Ninja“ „CentOS 7“ serveryje.

Būtinos sąlygos

1 veiksmas: atnaujinkite sistemą

Prieš diegiant bet kokius paketus CentOS serverio egzemplioriuje, rekomenduojama atnaujinti sistemą. Prisijunkite prie savo serverio per SSH kaip sudo vartotojas ir paleiskite šią komandą:

sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now

2 veiksmas: įdiekite LEMP serverį.

Prieš pradėdami, savo serveryje turėsite įdiegti LEMP (Nginx, MariaDB ir PHP).

Pirmiausia įdiekite „Nginx“ ir „MariaDB“ naudodami šią komandą:

sudo yum install nginx mariadb-server -y

Baigę diegti, paleiskite „Nginx“ ir „MariaDB“ paslaugą ir įgalinkite jas paleisti:

sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start mariadb
sudo systemctl enable mariadb

Tada jums reikės PHP7 ir PHP7.0-FPM, kad galėtumėte įdiegti „Invoice Ninja“.

Pirmiausia pridėkite PHP7.0 saugyklą prie sistemos naudodami šią komandą:

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

Tada įdiekite PHP7.0-FPM ir kitus reikalingus PHP plėtinius naudodami šią komandą:

sudo 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 -y

Kai diegimas bus baigtas, turėsite pakeisti php.ini konfigūracijos failą:

sudo nano /etc/php.ini

Pakeiskite šią eilutę:

cgi.fix_pathinfo=0

Išsaugokite ir uždarykite failą.

3 veiksmas: sukonfigūruokite duomenų bazę

Pagal numatytuosius nustatymus MariaDB diegimas nėra apsaugotas, todėl pirmiausia turėsite jį apsaugoti. Tai galite padaryti paleisdami mysql saugaus diegimo scenarijų:

sudo mysql_secure_installation

Atsakykite į visus klausimus, kaip parodyta žemiau:

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

Kai viskas bus padaryta, prisijunkite prie MySQL apvalkalo naudodami šią komandą:

mysql -u root -p

Įveskite savo root slaptažodį ir paspauskite enter, pamatysite MySQL apvalkalą:

Tada sukurkite naują „Invoice Ninja“ duomenų bazę ir naują naudotoją:

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

4 veiksmas: sukonfigūruokite PHP-FPM

Tada turėsite sukonfigūruoti PHP-FPM telkinį Nginx vartotojui:

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

Pakeiskite šias eilutes:

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

Baigę išsaugokite ir uždarykite failą.

Tada turėsite sukurti naują PHP seanso ir lizdo failo katalogą:

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

Galiausiai paleiskite PHP7.0-FPM paslaugą ir pridėkite ją, kad ji būtų paleista įkrovos metu:

sudo systemctl start php-fpm
systemctl enable php-fpm

5 veiksmas: atsisiųskite ir sukonfigūruokite sąskaitą faktūrą „Ninja“.

Galite atsisiųsti naujausią stabilią sąskaitos faktūros Ninja versiją iš „GitHub“ saugyklos naudodami šią komandą:

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

Taip pat turėsite įdiegti PHP priklausomybės tvarkyklę (kompozitorių). Jį galite įdiegti naudodami šią komandą:

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

Tada įdiekite visas sąskaitos faktūros Ninja priklausomybes naudodami kompozitoriaus komandą, kaip parodyta toliau:

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

Įdiegę pervardykite .env failą ir atlikite kai kuriuos pakeitimus:

sudo mv .env.example .env
sudo nano .env

Pakeiskite eilutes, kaip parodyta žemiau:

DB_DATABASE=ninja_db
DB_USERNAME=ninja
DB_PASSWORD=password

Baigę išsaugokite failą, tada paleiskite šią komandą, kad paruoštumėte duomenų bazę:

sudo php artisan migrate

Būsite paraginti paleisti komandą, įveskite „taip“ ir paspauskite „enter“.

Tada įdėkite į duomenų bazę su įrašais, kaip parodyta toliau:

sudo php artisan db:seed

Įveskite „taip“ ir paspauskite „įvesti“.

Tada pakeiskite /var/www/html/ninjakatalogo nuosavybės teisę :

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

6 veiksmas: sukonfigūruokite „Nginx“, skirtą „Invoice Ninja“.

Tada turėsite sukurti SSL sertifikatą ir sukurti naują virtualios prieglobos konfigūraciją, skirtą Invoice Ninja.

Pirmiausia sukurkite SSL katalogą:

sudo mkdir -p /etc/nginx/cert/

Tada sugeneruokite SSL sertifikatą naudodami šią komandą:

sudo openssl req -new -x509 -days 365 -nodes -out /etc/nginx/cert/ninja.crt -keyout /etc/nginx/cert/ninja.key

Tada suteikite tinkamą leidimą sertifikato failui:

sudo chmod 600 /etc/nginx/cert/*

Tada sukurkite naują virtualaus pagrindinio kompiuterio konfigūracijos failą /etc/nginx/ kataloge:

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

Pridėkite šias eilutes:

server {
    listen  80;
    server_name 192.168.15.23;
    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;
       }
    }

Išsaugokite ir uždarykite failą ir iš naujo paleiskite „Nginx“ žiniatinklio serverį:

sudo systemctl restart nginx

7 veiksmas: pasiekite sąskaitą faktūrą „Ninja“.

Prieš prisijungdami prie „Invoice Ninja“ žiniatinklio sąsajos, turėsite leisti http ir https paslaugas naudodami ugniasienę. Vykdykite toliau pateiktas komandas, kad atidarytumėte prievadus:

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

Galiausiai atidarykite žiniatinklio naršyklę ir įveskite URL https://192.168.15.23, tada atlikite reikiamus veiksmus, kad užbaigtumėte diegimą.

Sveikiname! sėkmingai įdiegėme „Invoice Ninja“ su „Nginx“ ir „MariaDB“ „CentOS 7“ serveryje.

Palikti komentarą

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį