Įdiekite „Plesk“ „CentOS 7“.
Naudojate kitą sistemą? Plesk yra patentuotas žiniatinklio prieglobos valdymo skydelis, leidžiantis vartotojams administruoti savo asmenines ir (arba) klientų svetaines, duomenų bazes
OroCRM yra nemokama atvirojo kodo klientų santykių tvarkyklės (CRM) programa, sukurta OroPlatform. „OroPlatform“ yra visiškai pritaikoma atvirojo kodo verslo taikomųjų programų platformos programinė įranga. OroPlatform suteikia visas funkcijas, kurių reikia norint sukurti pritaikytą programą. OroCRM sukurtas naudojant PHP Symfony sistemą ir saugo savo duomenis MySQL/MariaDB duomenų bazės serveryje. Tai įmonėms paruošta CRM programa, teikianti daugybę funkcijų. Jis taip pat integruojamas su daugeliu trečiųjų šalių programų, tokių kaip „Magento Store“, „MailChimp“, „Zendesk“ ir kt. Jis yra daugiakalbis ir turi visiškai reaguojančią vartotojo sąsają, kuri suteikia galimybę ją valdyti ir naudojant mobiliuosius įrenginius.
Šioje pamokoje naudosime crm.example.com
kaip domeno pavadinimą, nukreiptą į serverį. Pakeiskite visus atvejus crm.example.com
tikruoju domeno pavadinimu.
Atnaujinkite bazinę sistemą naudodami vadovą Kaip atnaujinti CentOS 7 . Kai sistema bus atnaujinta, tęskite reikalingų priklausomybių diegimą.
OroCRM galima įdiegti bet kuriame gamybiniame žiniatinklio serveryje, palaikančiame PHP. OroCRM palaiko visas PHP versijas, didesnes nei 7.0. Šioje pamokoje mes naudosime Nginx su PHP-FPM ir PHP 7.1.
Įdiekite „Nginx“.
sudo yum -y install nginx
Paleiskite Nginx ir įgalinkite jį automatiškai paleisti įkrovos metu.
sudo systemctl start nginx
sudo systemctl enable nginx
PHP 7 nėra pasiekiamas numatytojoje YUM saugykloje, tačiau galime naudoti Remi saugyklą, kad gautume ir įdiegtume naujausias PHP 7 versijas. Pirmiausia pridėkite ir įgalinkite Remi saugyklą.
sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php71
Įdiekite naujausią PHP 7 versiją kartu su PHP moduliais, reikalingais OroCRM.
sudo yum -y install php php-fpm php-ctype php-curl php-fileinfo php-gd php-intl php-json php-mbstring php-mcrypt php-mysql php-pcre php-simplexml php-tokenizer php-xml php-zip php-tidy php-soap php-opcache php-posix
Redaguokite numatytąjį PHP konfigūracijos failą.
sudo nano /etc/php.ini
Raskite šias eilutes. Panaikinkite komentarą ir atlikite pakeitimus, kaip parodyta.
date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate timezone
memory_limit = 512M
cgi.fix_pathinfo=0
Redaguokite PHP-FPM konfigūracijos failą.
sudo nano /etc/php-fpm.d/www.conf
Pagal numatytuosius nustatymus PHP-FPM yra sukonfigūruotas veikti su Apache ir klausytis prievado 9000
. Turėsime pakeisti vartotoją ir grupę, taip pat Unix lizdo failą, kuriame jis veiks. Raskite šias eilutes ir atlikite reikiamus pakeitimus, kaip parodyta.
user = nginx
group = nginx
;listen = 127.0.0.1:9000
;Comment out or remove the above line and add the following line.
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nobody
listen.group = nobody
Paleiskite PHP-FPM ir įgalinkite jį paleisti įkrovos metu.
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
Suteikite PHP-FPM lizdo failo nuosavybės teisę Nginx vartotojui.
sudo chown nginx:nginx /var/run/php-fpm/php-fpm.sock
MariaDB yra atvirojo kodo MySQL šakutė. Įdiekite MariaDB.
sudo yum -y install mariadb mariadb-server
Paleiskite MariaDB ir įgalinkite jį automatiškai paleisti įkrovos metu.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Numatytasis MariaDB diegimas pateikiamas su keliomis bandomomis duomenų bazėmis ir anoniminiais vartotojais. Prieš konfigūruodami duomenų bazę, pirmiausia turėsite apsaugoti MariaDB serverį. Galite apsaugoti jį paleisdami mysql_secure_installation
scenarijų.
sudo mysql_secure_installation
Jūsų bus paprašyta įvesti dabartinį MariaDB root slaptažodį. Pagal numatytuosius nustatymus naujame MariaDB diegime nėra root slaptažodžio. Norėdami Enter
tęsti, paspauskite mygtuką. Nustatykite tvirtą slaptažodį pagrindiniam MariaDB serverio vartotojui ir atsakykite Y
į visus kitus užduodamus klausimus. Užduoti klausimai yra savaime suprantami.
Vykdydami prisijunkite prie „MySQL“ apvalkalo kaip root naudotojas.
mysql -u root -p
Pateikite slaptažodį, kad MariaDB root naudotojas galėtų prisijungti.
Vykdykite šias užklausas, kad sukurtumėte duomenų bazę ir duomenų bazės vartotoją OroCRM diegimui.
CREATE DATABASE oro_data;
CREATE USER 'oro_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON oro_data.* TO 'oro_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Galite pakeisti duomenų bazės pavadinimą oro_data
ir vartotojo vardą oro_user
pagal savo pasirinkimą. Būtinai pakeiskite StrongPassword
į labai stiprų slaptažodį.
OroCRM taip pat reikalingas Node.js JavaScript vykdymo laikas. „Node.js“ naudos „OroCRM“, kad sudarytų „JavaScript“, naudojamą programos vartotojo sąsajai kurti. Numatytoje CentOS saugykloje yra pasenusi Node.js versija, todėl turėsite pridėti Nodesource saugyklą prie sistemos, kad gautumėte naujausią versiją.
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
Įdiekite Node.js ir Git.
sudo yum -y install nodejs git
„Git“ bus naudojamas „OroCRM“ saugyklai klonuoti iš interneto. Taip pat turėsite įdiegti „Composer“. „Composer“ yra priklausomybės tvarkyklės įrankis, skirtas PHP programoms. Kadangi „OroCRM“ yra parašytas „Symfony“ sistemoje, jums reikės „Composer“, kad įdiegtumėte priklausomybes ir programą.
Įdiekite kompozitorių.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
Perkelkite „Composer“ į /usr/bin
katalogą, kad jį būtų galima vykdyti iš bet kurios sistemos vietos.
sudo mv composer.phar /usr/bin/composer
Suteikite kompozitoriui leidimą vykdyti.
sudo chmod +x /usr/bin/composer
Yra daug būdų, kaip atsisiųsti OroCRM į savo serverį. Tinkamiausias būdas gauti naujausią versiją yra klonuoti saugyklą per Git.
Klonuokite OroCRM saugyklą.
cd /usr/share/nginx/
sudo git clone -b 2.3 https://github.com/oroinc/crm-application.git orocrm
Nukopijuokite pavyzdinį parameters
failą į numatytąjį parameters
failą, kurį naudoja OroCRM.
cd orocrm
sudo cp app/config/parameters.yml.dist app/config/parameters.yml
Kad galėtumėte tęsti, turėsite atnaujinti parameters.yml
failą, kad būtų pateikta duomenų bazės ir el. pašto informacija.
sudo nano app/config/parameters.yml
Raskite šias eilutes.
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: ~
database_name: oro_crm
database_user: root
database_password: ~
Atnaujinkite aukščiau nurodytą konfigūraciją pagal duomenų bazę, kurią sukūrėte OroCRM duomenims saugoti. Mūsų atveju tai turėtų atrodyti taip.
database_driver: pdo_mysql
database_host: 127.0.0.1
database_port: 3306
database_name: oro_data
database_user: oro_user
database_password: StrongPassword
Jei turite paruoštą SMTP serverį ir norite nedelsdami naudotis el. pašto siuntimo funkcijomis, galite atnaujinti pašto siuntimo nustatymus, kaip parodyta.
mailer_transport: smtp
mailer_host: mail.example.com
mailer_port: 456
mailer_encryption: ssl
mailer_user: [email protected]
mailer_password: EMailPassword
Jei neturite paruošto pašto serverio, kol kas galite jį praleisti, palikdami esamas reikšmes. Visada galite pakeisti el. pašto konfigūraciją naudodami prietaisų skydelį.
Įveskite atsitiktinę eilutę secret
pakeisdami ThisTokenIsNotSoSecretChangeIt
. Seanso duomenims užkoduoti reikalinga atsitiktinė eilutė. Pavyzdinė eilutė atrodys taip.
secret: uxvpXHhDxCFc9yU1hV1fMwjSoyVUzGh4WBMBBBa3XEgrRUF5OuB2h8iNl9JRDqcd
Galite sugeneruoti atsitiktinę eilutę naudodami pwgen
įrankį. Įdiekite pwgen
programą paleisdami sudo yum -y install pwgen
. Norėdami sugeneruoti atsitiktinę eilutę, paleiskite pwgen -s 64 1
.
Išsaugokite failą ir išeikite iš redaktoriaus. Įdiekite reikiamas PHP priklausomybes per kompozitorių.
sudo composer install --prefer-dist --no-dev
Naudojant --no-dev
bus užtikrinta, kad kompozitorius įdiegs tik tas priklausomybes, kurių reikia žiniatinklio serveriui paleisti gamybiniu režimu. Scenarijus užtruks kelias minutes, kol atsisiųsite ir įdiegsite reikiamas PHP priklausomybes.
Įdiekite programą.
sudo php app/console oro:install --env=prod
Tai sukurs žiniatinklio talpyklą ir parašys duomenų bazę. --env=prod
Parametras yra numatyta įdiegti gamyboje režimu taikymą. Diegimas bus tęsiamas tik tada, kai bus įdiegtos ir sukonfigūruotos visos reikiamos priklausomybės.
Diegimo metu jums bus užduodami keli klausimai dėl administratoriaus paskyros nustatymo. Klausimai yra tokie.
Administration setup.
Application URL (http://localhost): http://crm.example.com
Organization name (OroCRM): My Organization
Username (admin):
Email: [email protected]
First name: John
Last name: Doe
Password:
Load sample data (y/n): y
Pateikite informaciją. Įkelkite pavyzdinius duomenis, kad įvertintumėte produktą prieš naudodami jį gamybai.
Sušildykite API dokumentacijos talpyklą:
sudo php app/console oro:api:doc:cache:clear
Sukurkite Nginx serverio bloko failą, kad programa būtų teikiama vartotojams.
sudo nano /etc/nginx/conf.d/orocrm.conf
Užpildykite failą.
server {
server_name crm.example.com;
root /usr/share/nginx/orocrm/web;
location / {
# try to serve file directly, fallback to app.php
try_files $uri /app.php$is_args$args;
}
location ~ ^/(app|app_dev|config|install)\.php(/|$) {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS off;
}
# Enable Gzip compression
gzip on;
gzip_buffers 16 8k;
gzip_comp_level 5;
gzip_disable "msie6";
gzip_min_length 1000;
gzip_http_version 1.0;
gzip_proxied any;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/xml text/css image/svg+xml;
gzip_vary on;
# Enable browser caching
# One week for javascript and css
location ~* \.(?:css|js) {
expires 1w;
access_log off;
add_header Cache-Control public;
}
# Three weeks for media: images, fonts, icons, video, audio etc.
location ~* \.(?:jpg|jpeg|gif|png|ico|tiff|woff|eot|ttf|svg|svgz|mp4|ogg|ogv|webm|swf|flv)$ {
expires 3w;
access_log off;
add_header Cache-Control public;
}
error_log /var/log/nginx/orocrm_error.log;
access_log /var/log/nginx/orocrm_access.log;
}
Įsitikinkite, kad pakeisite crm.example.com
savo tikrąjį domeno pavadinimą. Aukščiau pateikta konfigūracija taip pat apima konfigūraciją, reikalingą GZip glaudinimui ir naršyklės talpyklai. Gzip suspaudimas suglaudina duomenis prieš siunčiant juos į naršyklę. Įjungus naršyklės talpyklą, statiniai ištekliai saugomi kliento kompiuterio žiniatinklio talpykloje. Kitą kartą vartotojui prisijungus prie svetainės, didžioji dalis statinio turinio įkeliama iš paties vartotojo žiniatinklio talpyklos. Šie du metodai žymiai padidina programos greitį.
Patikrinkite, ar Nginx konfigūracijos faile nėra klaidų.
sudo nginx -t
Išvestis turėtų atrodyti taip.
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Suteikite OrOCRM failų nuosavybės teisę Nginx vartotojui.
sudo chown -R nginx:nginx /usr/share/nginx/orocrm
Iš naujo paleiskite „Nginx“, kad pritaikytumėte naują konfigūraciją.
sudo systemctl restart nginx
Jei savo serveryje naudojate ugniasienę, turėsite sukonfigūruoti užkardą, kad nustatytumėte HTTP paslaugos išimtį. Leiskite Nginx prisijungti iš tinklo ribų.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload
Dabar galite pasiekti programą adresu http://crm.example.com
. Prisijunkite naudodami administratoriaus vartotojo vardą ir slaptažodį, kuriuos nustatėte diegimo metu.
Norėdami automatiškai vykdyti suplanuotas užduotis, galite pridėti Cron darbo įrašą. Atidaryti crontab
.
sudo crontab -e
Pridėkite šią eilutę prie failo.
*/1 * * * * /usr/bin/php /usr/share/nginx/orocrm/app/console oro:cron --env=prod > /dev/null
Tai atliks cron užduotį kas minutę, kad suplanuotos užduotys, pvz., el. pašto eilės, būtų apdorotos anksčiausiai.
Taip pat turėsite nustatyti Supervisor, kad paleistumėte pranešimų eilės paslaugą. Kad vartotojas apdorotų pranešimus, būtina, kad visą laiką būtų vykdomas bent vienas procesas. Vartotojas paprastai gali pertraukti pranešimo procesą įvairiais būdais. Siekdami užtikrinti, kad paslauga veiktų nuolat, naudosimės Supervizoriaus paslauga. Sukonfigūruosime Supervisor, kad lygiagrečiai vykdytų keturis procesus. Jei kuris nors iš keturių procesų sustabdomas dėl kokios nors priežasties, vadovas bandys jį pradėti iš naujo.
Įdiegti Supervisor.
sudo yum -y install supervisor
Redaguokite prižiūrėtojo konfigūracijos failą.
sudo nano /etc/supervisord.conf
Failo pabaigoje pridėkite šias eilutes.
[program:oro_message_consumer]
command=/usr/bin/php /usr/share/nginx/orocrm/app/console --env=prod --no-debug oro:message-queue:consume
process_name=%(program_name)s_%(process_num)02d
numprocs=4
autostart=true
autorestart=true
startsecs=0
user=nginx
redirect_stderr=true
Paleiskite ir įgalinkite Supervisor automatiškai paleisti įkrovos metu.
sudo systemctl start supervisord
sudo systemctl enable supervisord
Procesų būseną galite peržiūrėti vykdydami toliau nurodytus veiksmus.
sudo supervisorctl status
Turėtumėte pamatyti, kad procesai vyksta.
[user@vultr ~]$ sudo supervisorctl status
oro_message_consumer:oro_message_consumer_00 RUNNING pid 13596, uptime 0:02:13
oro_message_consumer:oro_message_consumer_01 RUNNING pid 13595, uptime 0:02:13
oro_message_consumer:oro_message_consumer_02 RUNNING pid 13594, uptime 0:02:13
oro_message_consumer:oro_message_consumer_03 RUNNING pid 13593, uptime 0:02:13
OroCRM dabar įdiegtas jūsų serveryje. Dabar galite naudoti programą norėdami tvarkyti įprastas savo organizacijos užduotis. Norėdami sužinoti daugiau apie OroCRM, galite apsilankyti oficialioje jos svetainėje .
Naudojate kitą sistemą? Plesk yra patentuotas žiniatinklio prieglobos valdymo skydelis, leidžiantis vartotojams administruoti savo asmenines ir (arba) klientų svetaines, duomenų bazes
Įvadas Cacti yra atvirojo kodo stebėjimo ir grafikų sudarymo įrankis, visiškai pagrįstas RRD duomenimis. Naudodami „Cacti“ galite stebėti beveik bet kokio tipo įrenginius
Įvadas „Lets Encrypt“ yra sertifikatų išdavimo tarnyba, siūlanti nemokamus TLS/SSL sertifikatus. Diegimo procesą supaprastina Certbot,
Naudojate kitą sistemą? Kas yra Tekkit Classic? „Tekkit Classic“ yra visų žinomo ir mėgstamo žaidimo modifikacijų paketas; Minecraft. Jame yra keletas ver
Naudojate kitą sistemą? Ši pamoka parodys, kaip įdiegti grupinę programinę įrangą iRedMail naujai įdiegus Debian Wheezy. Turėtumėte naudoti tarnavimą
Naudojate kitą sistemą? „Jekyll“ yra puiki „WordPress“ alternatyva dienoraščių rašymui ar turinio dalijimuisi. Tam nereikia jokių duomenų bazių ir tai labai paprasta
Squid yra populiari nemokama „Linux“ programa, leidžianti sukurti persiuntimo žiniatinklio tarpinį serverį. Šiame vadove pamatysite, kaip įdiegti „Squid“ „CentOS“, kad paverstumėte jus
Įvadas Lighttpd yra „Apache“ šakutė, skirta daug mažiau išteklių imti. Jis yra lengvas, todėl jo pavadinimas ir yra gana paprastas naudoti. Įdiegti
1. Virtualmin/Webmin Virtualmin yra galingas ir lankstus interneto prieglobos valdymo skydelis, skirtas Linux ir UNIX sistemoms, pagrįstas gerai žinoma atvirojo kodo žiniatinklio baze
Yii yra PHP sistema, leidžianti greičiau ir lengviau kurti programas. „Yii“ įdiegimas „Ubuntu“ yra nesudėtingas, nes sužinosite tiksliai
Ekranas yra programa, leidžianti kelis kartus naudoti terminalo seansus viename lange. Tai leidžia imituoti kelis terminalo langus, kur tai ma
Įvadas Logrotate yra „Linux“ programa, supaprastinanti žurnalo failų administravimą. Paprastai jis veikia kartą per dieną per cron darbą ir tvarko žurnalų bazę
VULTR neseniai atliko pakeitimus, ir dabar viskas turėtų veikti gerai, kai įjungta „NetworkManager“. Jei norite išjungti
Icinga2 yra galinga stebėjimo sistema, o kai naudojama pagrindinio kliento modelyje, ji gali pakeisti NRPE pagrįstų stebėjimo patikrų poreikį. Meistras-klientas
Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.
Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.
Naudojate kitą sistemą? MODX Revolution yra greita, lanksti, keičiamo dydžio, nemokama ir atviro kodo, įmonės lygio turinio valdymo sistema (TVS), parašyta i.
Naudojate kitą sistemą? Mattermost yra atvirojo kodo, savarankiškai priglobta alternatyva Slack SAAS pranešimų paslaugai. Kitaip tariant, naudodami Mattermost, jūs apytiksliai
Naudojate kitą sistemą? MODX Revolution yra greita, lanksti, keičiamo dydžio atvirojo kodo, įmonės lygio turinio valdymo sistema (TVS), parašyta PHP. Tai i
„Plesk“ valdymo skydelyje yra labai graži „Lets Encrypt“ integracija. „Lets Encrypt“ yra vienas iš vienintelių SSL teikėjų, išduodančių visus sertifikatus
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
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.
Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.
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.
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…
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.
Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.
Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.
Š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į.
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į