Installazzjoni ta 'PHP Server Monitor Għodda bl-użu ta' LEMP jew LAMP Stack f'Arch Linux
PHP Server Monitor hija għodda ta' monitoraġġ tal-web frontend ta' Sors Miftuħ miktuba f'PHP, li tista' tivverifika jekk is-servers tiegħek (IP, dominji) jew is-servizzi humiex qed jaħdmu u jistgħu jibagħtulek notifiki permezz ta' servizzi tal-posta jew SMS jekk seħħet problema fuq servizz jew port sorveljat. Jiċċekkja websajts billi juża kodiċi tal-istatus HTTP, jista 'juri graffs tal-istorja ta' uptime u latency u jista 'juża żewġ livelli ta' awtentikazzjoni (amministratur u utent regolari).
Dan it-tutorja jippreżentalek mod kif tista' tinstalla PHP Server Monitor f'ambjent ta' server Arch Linux billi tuża kemm jekk Apache bħala server jew Nginx web server, għalhekk, tista 'tagħżel il-proċess ta' installazzjoni li jixraqlek l-aħjar.
Bħala rekwiżiti ġenerali biex tinstalla u twaqqaf PHP Server Monitor għal kwalunkwe pjattaformi Linux oħra, is-server għandek bżonn il-pakketti li ġejjin installati.
- PHP 5.3.7+
- Pakketti PHP: cURL, MySQL
- Database MySQL
- Servers tal-web Nginx jew Apache
Biex tinstalla PHP Server Monitor ma 'Nginx uża t-tutorials li ġejjin bħala gwidi biex twaqqaf il-munzell LEMP u l-Ospiti Virtwali fuq Arch.
- Installa LEMP (Linux, Nginx, MySQL, PHP) f'Arch Linux
- Oħloq Hosts Virtwali Nginx f'Arch Linux
Biex tinstalla PHP Server Monitor b'Apache uża l-gwida li ġejja biex twaqqaf LAMP stack fuq Arch Linux.
- Installa LAMP (Linux, Apache, MySQL, PHP) f'Arch Linux
Pass 1: Ikkonfigura Nginx/Apache Webserver
1. Qabel ma nibdew, jekk is-setup tiegħek tuża Virtual Hosting trid tiżgura li għandek dħul validu tad-DNS li jindika d-dominju tiegħek jew tuża fajl hosts lokali f'każ li ma jkollokx server DNS. Dan it-tutorja juża Virtual Hosting maż-żewġ servers tal-web (Nginx u Apache) ikkonfigurati b’dominju lokali falz – phpsrvmon.lan – permezz ta’ /etc/hosts fajl.
2. Biex iżżid Nginx Virtual Host ġdid, oħloq fajl ta' konfigurazzjoni ġdid fuq /etc/nginx/sites-available/ b'isem phpsrvmon.conf u uża l-mudell li ġej bħala eżempju ta' konfigurazzjoni.
$ sudo nano /etc/nginx/sites-available/phpsrvmon.conf
Żid il-kodiċi li ġej mal-fajl 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. Jekk trid taċċessa PHP Sever Monitor permezz ta' protokoll HTTP sikur, oħloq il-fajl ta' konfigurazzjoni ekwivalenti SSL tagħha.
$ sudo nano /etc/nginx/sites-available/phpsrvmon-ssl.conf
Żid il-kodiċi li ġej mal-fajl 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. Wara li teditja l-fajls Nginx conf, oħloq Document Root path, f'każ li bdiltha bħal hawn għal /srv/www/phpsrvmon/, attiva ż-żewġ hosts virtwali billi tuża l-utilità n2ensite u terġa 'tibda Nginx biex tirrifletti l-bidliet.
$ sudo mkdir -p /srv/www/phpsrvmon/ $ sudo n2ensite phpsrvmon $ sudo n2ensite phpsrvmon-ssl $ sudo systemctl restart nginx
Jekk teħtieġ ċertifikat SSL ġdid għall-Ospitanti Virtwali tiegħek, iġġenera wieħed billi tuża kmand nginx_gen_ssl bl-isem tad-dominju tiegħek u mmodifika phpsrvmon-ssl.conf kif xieraq.
5. Jekk tuża Apache bħala server tal-web, oħloq fajl tal-konfigurazzjoni tal-Ospitanti Virtwali ġdid fuq /etc/httpd/conf/sites-available/ b'isem phpsrvmon.conf u uża d-definizzjonijiet tal-fajl li ġejjin bħala mudell.
$ sudo nano /etc/httpd/conf/sites-available/phpsrvmon.conf
Żid il-kodiċi li ġej mal-fajl 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. Jekk inti, ukoll, teħtieġ aċċess PHP Server Monitor fuq protokoll HTTPS, oħloq fajl ta 'konfigurazzjoni SSL Virtual Host ġdid bid-dikjarazzjonijiet li ġejjin.
$ sudo nano /etc/httpd/conf/sites-available/phpsrvmon-ssl.conf
Żid il-kodiċi kollu li ġej fil-fajl 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. Bl-użu tal-istess proċedura bħal għal Nginx, oħloq id-direttorju tal-Għerq tad-Dokument, f'każ li l-mogħdija tal-fajls tal-web moqdija tkun inbidlet, attiva Apache Hosts Virtwali billi tuża kmand a2ensite u terġa 'tibda daemon biex tapplika l-bidliet.
$ sudo mkdir -p /srv/www/phpsrvmon/ $ sudo a2ensite phpsrvmon $ sudo a2ensite phpsrvmon-ssl $ sudo systemctl restart httpd
Biex tiġġenera Ċertifikat u Ċavetta SSL ġodda għal dan l-Ospitanti Virtwali uża l-utilità apache_gen_ssl, waħħal l-isem tad-dominju tiegħek fuq l-isem taċ-Ċertifikat u mmodifika /etc/httpd/conf/sites-available/phpsrvmon-ssl.conf fajl, li jissostitwixxi Ċertifikat SSL antik u mogħdija taċ-Ċavetta u ismijiet b'oħrajn ġodda.
Pass 2: Editja l-konfigurazzjonijiet PHP
8. Sabiex jiġu evitati xi żbalji ta 'installazzjoni, dak il-Monitor tas-Server PHP se tarmi meta jivverifika r-rekwiżiti tas-sistema jiftaħ il-fajl php.ini u jagħmel l-aġġustamenti li ġejjin.
$ sudo nano /etc/php/php.ini
Jekk il-mogħdija ta' l-Għerq tad-Dokument Nginx/Apache tkun inbidel (waħda default hija /srv/http/) uża [Ctrl+w] biex issib open_basedir dikjarazzjoni u ehmeż il-mogħdija l-ġdida billi tipprefissa bil-kolon \ : \ – f'dan il-każ it-triq il-ġdida hija /srv/www/ – biex tidher bħal fl-eżempju hawn taħt.
open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/:/srv/www/
Fittex u ppermetti PHP pdo, mysqli u estensjonijiet curl billi ma tikkummentahom (neħħi l-punt virgola minn quddiem).
extension=curl.so extension=mysqli.so extension=pdo_mysql.so
Sib iż-żona tal-ħin u ssettja l-ħin lokali tiegħek billi tuża Din il-Paġna.
date.timezone = Continent/City
9. Wara li jsiru l-bidliet kollha, ibda mill-ġdid is-servizzi tiegħek biex tapplika l-bidliet.
$ sudo systemctl restart php-fpm $ sudo systemctl restart nginx $ sudo systemctl restart httpd
Pass 3: Oħloq PHP Server Monitor MySQL Database
10. Biex toħloq id-database meħtieġa għal PHP Server Monitor biex jaħżen l-informazzjoni, idħol fid-database MySQL/MariaDB u oħloq database ġdida billi tuża l-kmandi li ġejjin (issostitwixxi d-database, l-utent u l-password bil-kredenzjali preferuti tiegħek).
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
Jekk għandek PhpMyAdmin installat fis-sistema tiegħek tista' toħloq database PHP Server Monitor billi taċċessa MySQL/MariaDB mill-interface tal-web tagħha.
Pass 4: Installa PHP Server Monitor
11. Qabel ma tipproċedi bit-tniżżil tal-għodda PHP Server Monitor, kun żgur li installajt il-kmand wget.
$ sudo pacman -S wget
12. Biex taqbad l-aħħar verżjoni tal-PHP Server Monitor mur fil-link li ġejja u niżżel il-fajl tal-arkivju tar.gz jew uża uża l-link uffiċjali tat-tniżżil ta' Git ipprovdut hawn taħt.
- http://www.phpservermonitor.org/download/
- https://github.com/phpservermon/phpservermon
Inkella, tista 'wkoll tniżżel direttament billi tuża l-kmand wget li ġej.
$ wget http://downloads.sourceforge.net/project/phpservermon/phpservermon/PHP%20Server%20Monitor%20v3.0.1/phpservermon-v3.0.1.tar.gz
13. Wara li tniżżel l-aħħar verżjoni, iġbedha bil-kmand tar u kkopja l-kontenut kollu estratt fil-mogħdija ta 'l-Għerq tad-Dokument tal-Web Server billi tuża l-kmandi li ġejjin.
$ tar xfvz phpservermon-v3.0.1.tar.gz $ sudo cp -r phpservermon/* /srv/www/phpsrvmon/
14. Imbagħad iftaħ browser u naviga lejn l-isem tad-dominju tiegħek (f'każ li tuża hosts virtwali kif ippreżentat f'dan it-tutorja, inkella uża l-indirizz IP tas-server tiegħek ) u fuq il-paġna ta' greeting agħfas Ejja buttuna.
15. Fuq l-iskrin li jmiss daħħal l-informazzjoni tad-database MySQL tiegħek u agħfas fuq Save configuration.
16. Jekk ikollok żball li jgħid li l-fajl tal-konfigurazzjoni tiegħek ma setax jinkiteb uża l-kmandi li ġejjin biex toħloq fajl confing.php li jista’ jinkiteb u agħfas fuq Issejvjajt il-konfigurazzjoni.
$ su -c “> /srv/www/phpsrvmon/config.php” $ sudo chmod 777 /srv/www/phpsrvmon/config.php
17. Wara li ssalva l-konfigurazzjoni oħloq utent amministrattiv għal PHP Server Monitor billi tagħżel il-kredenzjali tiegħek u agħfas fuq il-buttuna Installa.
18. Wara li l-proċess ta 'installazzjoni jitlesta, agħfas fuq il-buttuna Mur fil-monitor tiegħek u tkun ridirett lejn il-paġna tal-Login. Idħol bil-kredenzjali tiegħek u tkun imħeġġa tagħmel il-paġna default PHP Server Monitor. Ibdel ukoll il-bidliet fil-fajl PHP Server Monitor config.php.
$ sudo chmod 754 /srv/www/phpsrvmon/config.php
19. Biex iżżid websajt ġdida għall-monitoraġġ mur Servers -> Żid ġdid, imla l-oqsma meħtieġa bis-settings tas-server tiegħek u agħfas fuq il-buttuna Save .
20. Biex tibda l-proċess ta' monitoraġġ fuq is-servers u s-servizzi kollha agħfas il-buttuna Aġġorna u inti tiġi ridirett lejn il-paġna ewlenija awtomatika fejn tiġi ppreżentata l-istatus tal-websajts/servizzi tiegħek.
21. Sabiex PHP Server Monitor jiċċekkja awtomatikament l-istatus tas-servers/servizzi tiegħek f'intervalli ta 'ħin regolari għandek bżonn tinstalla skedar tax-xogħol Cron fis-sistema tiegħek u żżid entrata ta' perjodu ta 'żmien ta' monitoraġġ f'fajl cron.
$ sudo pacman -S cronie $ sudo systemctl start cronie $ sudo systemctl enable cronie
22. Biex iżżid entrata ġdida fil-fajl cron li tiċċekkja l-websajt tiegħek kull 5 minuti uża sudo crontab –e kmand, jew, aħjar, editja manwalment il-fajl tal-għeruq tal-cron li jinsab f'/var/spool/ cron/direttorju billi taġġusta l-mogħdija biex taqbel mad-direttorju tal-installazzjoni tiegħek PHP Server Monitor. Biex telenka l-entrati kollha tal-crontab uża l-linja tal-kmand sudo crontab -l.
$ sudo nano /var/spool/cron/root
Żid l-entrata li ġejja - aġġusta l-perjodu ta 'żmien u l-passaġġ ta' installazzjoni kif xieraq
*/5 * * * * /usr/bin/php /srv/www/phpsrvmon/cron/status.cron.php
Konklużjoni
Għalkemm PHP Server Monitor ma jogħlax fil-kumplessità bħal servizzi oħra ta' monitoraġġ bħal Nagios, Cacti jew Zabbix, għandu tendenza li jkun ħafif ħafna fir-riżorsi konsum u tista 'twettaq ix-xogħol bħala pjattaforma ta' monitoraġġ billi tikkonfigura biex tibgħat emails jew SMS permezz ta 'lista vasta ta' gateway SMS, f'każ li l-websajts u s-servizzi mmonitorjati tiegħek qed jiltaqgħu ma 'problemi tekniċi jew huma stabbiliti.
Homepage: PHP Server Monitor