"PHP Server Monitor" tööriista installimine Arch Linuxi LEMP või LAMP Stacki abil
PHP Server Monitor on PHP-s kirjutatud avatud lähtekoodiga veebi eesserveri jälgimise tööriist, mis võimaldab kontrollida, kas teie serverid (IP, domeenid) või teenused on töökorras ja võib teile saata meilisõnumite või SMS-ide teel märguandeid kui jälgitavas teenuses või sadamas ilmnes probleem. See kontrollib veebisaite, kasutades HTTP olekukoodi, suudab kuvada uptime'i ja latentsusajaloo graafikuid ning kasutada kahte autentimistasandit (administraator ja tavakasutaja).
Selles õpetuses esitatakse viis, kuidas saate installida PHP Server Monitor Arch Linuxi serverikeskkonda, kasutades selleks kas serverina Apache või veebiserverina Nginx , nii saate valida endale sobivaima installiprotsessi.
Üldiste nõuetena PHP Server Monitori installimiseks ja häälestamiseks mis tahes muu Linuxi platvormi jaoks vajab teie server järgmisi pakette.
- PHP 5.3.7+
- PHP paketid: cURL, MySQL
- MySQL-i andmebaas
- Nginxi või Apache'i veebiserverid
PHP Server Monitori installimiseks Nginxiga kasutage järgmisi õpetusi LEMP-i virna ja virtuaalsete hostide seadistamiseks Archis.
- Installige Arch Linuxi LEMP (Linux, Nginx, MySQL, PHP)
- Nginxi virtuaalsete hostide loomine Arch Linuxis
Apache abil PHP Server Monitori installimiseks kasutage järgmist juhendit LAMP-i virna seadistamiseks Arch Linuxis.
- Installige Arch Linuxi LAMP (Linux, Apache, MySQL, PHP)
1. samm: konfigureerige Nginx/Apache veebiserver
1. Enne kui alustame, kui teie seadistus kasutab virtuaalserverit, peate veenduma, et teil on kehtiv DNS-i sisestusviis teie domeenile, või kasutage kohalikku faili hostid juhul, kui teil pole DNS-serverit. Selles õpetuses kasutatakse virtuaalserverit mõlema veebiserveriga ( Nginx ja Apache ), mis on konfigureeritud kohaliku domeeni võltsimisega - phpsrvmon.lan - läbi /etc/hosts fail.
2. Uue Nginxi virtuaalhosti lisamiseks looge uus konfiguratsioonifail saidil /etc/nginx/sites-available/ nimega phpsrvmon.conf ja kasutage järgmist malli konfiguratsiooninäide.
$ sudo nano /etc/nginx/sites-available/phpsrvmon.conf
Lisage järgmine kood faili phpsrvmon.conf .
server { listen 80; server_name phpsrvmon.lan; access_log /var/log/nginx/phpsrvmon.lan-access.log; error_log /var/log/nginx/phpsrvmon.lan-error.log; root /srv/www/phpsrvmon; location / { index index.php index.html index.htm; autoindex on; } location ~ \.php$ { fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi.conf; } }
3. Kui soovite pääseda PHP Sever Monitorile turvalise HTTP-protokolli kaudu, looge selle SSL-i samaväärne konfiguratsioonifail.
$ sudo nano /etc/nginx/sites-available/phpsrvmon-ssl.conf
Lisage järgmine kood faili phpsrvmon-ssl.conf .
server { listen 443 ssl; server_name phpsrvmon.lan; root /srv/www/phpsrvmon; ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; access_log /var/log/nginx/phpsrvmon.lan-ssl_access.log; error_log /var/log/nginx/phpsrvmon.lan-ssl_error.log; location / { index index.php index.html index.htm; autoindex on; } location ~ \.php$ { fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; include fastcgi.conf; } }
4. Pärast Nginx conf-failide redigeerimist looge dokumendi juurteekond, juhul kui muutsite selle nagu siin: /srv/www/phpsrvmon/, aktiveerige mõlemad virtuaalsed hostid, kasutades utiliiti n2ensite ja taaskäivitage Nginx muudatuste kajastamiseks.
$ sudo mkdir -p /srv/www/phpsrvmon/ $ sudo n2ensite phpsrvmon $ sudo n2ensite phpsrvmon-ssl $ sudo systemctl restart nginx
Kui vajate oma virtuaalhosti jaoks uut SSL-sertifikaati, genereerige see oma domeeninimega käsuga nginx_gen_ssl ja muutke vastavalt ka phpsrvmon-ssl.conf .
5. Kui kasutate Apache'i veebiserverina, looge uus virtuaalse masina konfiguratsioonifail saidil /etc/httpd/conf/sites-available/ nimega phpsrvmon.conf ja kasutage mallina järgmisi failide määratlusi.
$ sudo nano /etc/httpd/conf/sites-available/phpsrvmon.conf
Lisage järgmine kood faili phpsrvmon.conf .
<VirtualHost *:80> DocumentRoot "/srv/www/phpsrvmon" ServerName phpsrvmon.lan ServerAdmin [email ErrorLog "/var/log/httpd/phpsrvmon-error_log" TransferLog "/var/log/httpd/phpsrvmon-access_log" <Directory /> Options +Indexes AllowOverride All Order deny,allow Allow from all Require all granted </Directory> </VirtualHost>
6. Kui vajate ka HTTPS-protokollil juurdepääsu PHP Server Monitorile, looge uus virtuaalse hosti SSL-i konfiguratsioonifail järgmiste lausetega.
$ sudo nano /etc/httpd/conf/sites-available/phpsrvmon-ssl.conf
Lisage järgmine kogu kood faili phpsrvmon-ssl.conf .
<VirtualHost *:443> ServerName phpsrvmon.lan DocumentRoot "/srv/www/phpsrvmon" ServerAdmin [email ErrorLog "/var/log/httpd/phpsrvmon.lan-error_log" TransferLog "/var/log/httpd/phpsrvmon.lan-access_log" SSLEngine on SSLCertificateFile "/etc/httpd/conf/ssl/phpsrvmon.lan.crt" SSLCertificateKeyFile "/etc/httpd/conf/ssl/phpsrvmon.lan.key" <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog "/var/log/httpd/ssl_request_log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" <Directory /> Options +Indexes AllowOverride All Order deny,allow Allow from all Require all granted </Directory> </VirtualHost>
7. Kasutage sama protseduuri nagu Nginxi puhul, looge dokumendi juurkataloog, kui veebifailide teenindamise tee on muutunud, aktiveerige Apache Virtual Hosts käsuga a2ensite ja taaskäivitage deemon muudatuste rakendamiseks.
$ sudo mkdir -p /srv/www/phpsrvmon/ $ sudo a2ensite phpsrvmon $ sudo a2ensite phpsrvmon-ssl $ sudo systemctl restart httpd
Selle virtuaalse hosti jaoks uue SSL-sertifikaadi ja võtme loomiseks kasutage utiliiti apache_gen_ssl , lisage oma domeeninimi sertifikaadi nimele ja muutke /etc/httpd/conf/sites-available/phpsrvmon-ssl.conf fail, asendades vana SSL-sertifikaadi ja võtme tee ning nimed uutega.
2. samm: muutke PHP konfiguratsioone
8. Paigaldusvigade vältimiseks viskab see PHP Server Monitor süsteeminõuete kontrollimisel faili php.ini lahti ja teeb järgmised muudatused.
$ sudo nano /etc/php/php.ini
Kui Nginxi/Apache'i dokumendi juurteed on muudetud (vaikimisi on see /srv/http/), kasutage open_basedir leidmiseks [Ctrl + w] lause ja lisage uus tee, lisades kooloniga eesliide\": \" - antud juhul on uus tee /srv/www/ - näites välja nägemiseks allpool.
open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/:/srv/www/
Otsige ja lubage PHP pdo, mysqli ja curl laiendused, märkimata neid (eemaldage semikoolon nende eest).
extension=curl.so extension=mysqli.so extension=pdo_mysql.so
Leidke ajavöönd ja määrake kohalik aeg selle lehe kasutuseks.
date.timezone = Continent/City
9. Pärast kõigi muudatuste tegemist taaskäivitage oma teenused muudatuste rakendamiseks.
$ sudo systemctl restart php-fpm $ sudo systemctl restart nginx $ sudo systemctl restart httpd
3. samm: looge PHP Server Monitor MySQL andmebaas
10. PHP Server Monitori jaoks teabe salvestamiseks vajaliku andmebaasi loomiseks logige sisse MySQL/MariaDB andmebaasi ja looge uus andmebaas järgmiste käskude abil (asendage andmebaas, kasutaja ja parool eelistatud mandaatidega).
mysql -u root -p MariaDB > create database phpsrvmon; MariaDB > create user [email identified by "user_password"; MariaDB > grant all privileges on phpsrvmon.* to [email ; MariaDB > flush privileges; MariaDB > quit
Kui teie arvutisse on installitud PhpMyAdmin, saate PHP Server Monitori andmebaasi luua, kui pääsete selle veebiliidese kaudu MySQL/MariaDB juurde.
4. samm: installige PHP Server Monitor
11. Enne PHP Server Monitori tööriista allalaadimisega jätkamist veenduge, et olete installinud käsu wget.
$ sudo pacman -S wget
12. PHP Server Monitori uusima versiooni haaramiseks minge järgmisele lingile ja laadige alla tar.gz arhiivifail või kasutage allpool toodud ametlikku Giti allalaadimislinki.
- http://www.phpservermonitor.org/download/
- https://github.com/phpservermon/phpservermon
Teise võimalusena võite alla laadida ka otse järgmise käsuga wget.
$ wget http://downloads.sourceforge.net/project/phpservermon/phpservermon/PHP%20Server%20Monitor%20v3.0.1/phpservermon-v3.0.1.tar.gz
13. Pärast uusima versiooni allalaadimist eraldage see käsuga tar ja kopeerige kogu väljavõtte sisu veebiserveri dokumendi juurteele järgmiste käskude abil.
$ tar xfvz phpservermon-v3.0.1.tar.gz $ sudo cp -r phpservermon/* /srv/www/phpsrvmon/
14. Seejärel avage brauser ja navigeerige oma domeeninime juurde (kui kasutate virtuaalseid hoste, nagu selles õpetuses on näidatud, kasutage muul juhul oma serveri IP-aadressi) ja vajutage tervituslehel nuppu Let’s go.
15. Järgmisel ekraanil sisestage oma MySQL-i andmebaasi teave ja vajutage nuppu Salvesta konfiguratsioon .
16. Kui kuvatakse viga, mis ütleb, et teie konfiguratsioonifaili ei saanud kirjutada, kasutage kirjutatavate faili confing.php loomiseks järgmisi käske ja vajutage nuppu Olen konfiguratsiooni salvestanud .
$ su -c “> /srv/www/phpsrvmon/config.php” $ sudo chmod 777 /srv/www/phpsrvmon/config.php
17. Pärast konfiguratsiooni salvestamist looge PHP Server Monitori jaoks administraatorikasutaja, valides oma mandaadid ja vajutades nuppu Install .
18. Kui installiprotsess on lõpule jõudnud, vajutage nuppu Minge monitori juurde ja teid suunatakse sisselogimislehele. Logige sisse oma mandaadiga ja teil palutakse PHP Server Monitori vaikeleht. Samuti ennistage PHP Server Monitori config.php faili muudatused.
$ sudo chmod 754 /srv/www/phpsrvmon/config.php
19. Uue veebisaidi lisamiseks jälgimiseks minge saidile Serverid -> Lisa uus , täitke vajalikud väljad oma serveri seadetega ja vajutage nuppu Salvesta .
20. Kõigi serverite ja teenuste jälgimisprotsessi alustamiseks vajutage nuppu Värskenda ja teid suunatakse vaikeküljele, kus teile kuvatakse teie veebisaitide/teenuste olek.
21. Selleks, et PHP Server Monitor saaks teie serverite/teenuste olekut regulaarsete ajavahemike järel automaatselt kontrollida, peate oma süsteemi installima Cron tööajakava ja lisama croni faili jälgimisperioodi sisestuse.
$ sudo pacman -S cronie $ sudo systemctl start cronie $ sudo systemctl enable cronie
22. Uue kirje lisamiseks cron-faili, mis kontrollib teie veebisaiti iga 5 minuti järel, kasutage käsku sudo crontab –e või, parem, muutke käsitsi /var/spool/asuvat root cron-faili käsitsi cron/ kataloogi, kohandades teed vastavalt teie PHP Server Monitori installikataloogile. Kõigi crontab-kirjete loetlemiseks kasutage käsurida sudo crontab -l .
$ sudo nano /var/spool/cron/root
Lisage järgmine kirje - kohandage vastavalt ajavahemikku ja installimise teed
*/5 * * * * /usr/bin/php /srv/www/phpsrvmon/cron/status.cron.php
Järeldus
Kuigi PHP Server Monitor ei muutu keerukamaks kui muud seireteenused nagu Nagios , Cacti või Zabbix , kipub see ressurssides olema väga kerge tarbimist ja suudab täita tööd jälgimisplatvormina, seadistades meilisõnumite või SMS-ide saatmise suure SMS-lüüsi loendi kaudu juhul, kui teie jälgitavatel veebisaitidel ja teenustel on tehnilisi probleeme või need on all.
Koduleht : PHP Server Monitor