Nyochaa akụrụngwa nkesa na mkpokọta mkpokọta yana Apache CGI na Linux


Nkuzi a ga-atụle ka ị ga-esi wụnye ma na-agba ọsọ mkpokọta mkpokọta mkpokọta, nke bụ ngwa nleba anya webụ n'ihu maka Anakọtara daemon, yana njikọta Apache CGI interface iji wepụta mpụta html eserese iji lelee igbe Linux.

Na njedebe nke akụkọ ahụ, anyị ga-egosikwa otu ị ga-esi chebe interface mkpokọta mkpokọta site na iji usoro nyocha Apache .hpasswd.

Ihe a chọrọ n'isiokwu a bụ, ị ga-abụrịrị na ịwụnyela mkpokọta na mkpokọta weebụ na sistemụ Linux gị. Iji wụnye ngwugwu ndị a, ị ga-agbaso nzọụkwụ #1 na #2 site na isiokwu gara aga nke usoro isiokwu a:

  1. Wụnye Anakọtara na Anakọta-Web na Linux

Naanị soro usoro abụọ site na njikọ dị n'elu:

Step 1: Install Collectd Service 
Step 2: Install Collectd-Web and Dependencies 

Ozugbo ihe abụọ a chọrọ ka emechara nke ọma, ị nwere ike ịga n'ihu ntuziaka n'isiokwu a iji hazie mkpokọta mkpokọta na Apache CGI.

Nzọụkwụ 1: Ịwụnye Apache Web Server

1. Na-eche na ị tinyelarị sava weebụ Apache na sistemụ gị, ọ bụrụ na ọ bụghị, ịnwere ike iwunye site na iji iwu dịka nkesa Linux gị.

# apt-get install apache2	[On Debian based Systems]
# yum install httpd		[On RedHat based Systems]

2. Mgbe Apache tinyechara, gbanwee ndekọ ahụ na mgbọrọgwụ akwụkwọ sava weebụ gị (nke dị n'okpuru/var/www/html/ma ọ bụ/var/www usoro ụzọ wee mechie ọrụ Github Anakọta-web site n'inye iwu ndị a:

# cd /var/www/html
# git clone https://github.com/httpdss/collectd-web.git

Ọzọkwa, mee ka edemede anakọtara-web na-esote ka ọ rụọ ọrụ site na ịnye iwu a:

# chmod +x /var/www/html/collectd-web/cgi-bin/graphdefs.cgi

Kwụpụ 2: Kwado Apache CGI (.cgi scripts) maka onye nnabata an-kpọ

3. Ka Apache na-agba ọsọ CGI scripts dị n'okpuru ndabara host HTML Anakọtara-web cgi-bin directory, ị chọrọ ka o doro anya na Apache CGI interface maka Bash scripts (na .cgi ndọtị) site n'ịgbanwe saịtị-dị ndabara usu. ma na-agbakwụnye ngọngọ nkwupụta ndị dị n'okpuru.

Mbụ mepee faịlụ nhazi nhazi nke ndabara Apache maka iji ndezi nano edezi:

# nano /etc/apache2/sites-available/000-default.conf

Mgbe emeghere faịlụ maka idezi gbakwunye ngọngọ ntuziaka a n'okpuru ntuziaka Akwụkwọ Root dị ka egosiri na foto dị n'okpuru:

<Directory /var/www/html/collectd-web/cgi-bin>
                Options Indexes ExecCGI
                AllowOverride All
                AddHandler cgi-script .cgi
                Require all granted
</Directory>

Mgbe ịmechara idezi faịlụ ahụ, mechie ya na CTRL + o wee pụọ na nano editọ (CTRL + x), wee mee ka modul Apache CGI ma malitegharịa ihe nkesa ahụ iji tinye mgbanwe niile emere ugbu a site n'inye iwu ndị a:

# a2enmod cgi cgid
# service apache2 restart
OR
# systemctl restart apache2.service     [For systemd init scripts]

4. Iji mee ka Apache CGI interface maka CentOS/RHEL, mepee httpd.conf Apache faịlụ nhazi ma tinye ahịrị ndị a na ala nke faịlụ ahụ:

# nano /etc/httpd/conf/httpd.conf

Tinye ntụnye na-esote na faịlụ httpd.conf.

ScriptAlias /cgi-bin/ “/var/www/html/collectd-web/cgi-bin"
Options FollowSymLinks ExecCGI
AddHandler cgi-script .cgi .pl

Iji tinye mgbanwe, malitegharịa httpd daemon site n'inye iwu a:

# service httpd restart
OR
# systemctl restart httpd        [For systemd init scripts]

Kwụpụ 3: Chọgharịa ihe ntanetị anakọtara

5. Iji gaa na mkpokọta mkpokọta weebụ interface wee jiri anya nke uche hụ ọnụ ọgụgụ gbasara igwe anakọtara ruo ugbu a, mepee ihe nchọgharị wee gaa na adreesị IP/mkpokọta weebụ/URI igwe gị site na iji protocol HTTP.

http://192.168.1.211/collect-web/

Kwụpụ 4: Chedo paswọọdụ anakọtara URL site na iji Nyocha Apache

6. Ọ bụrụ na ịchọrọ igbochi ohere ịnweta mkpokọta mkpokọta mkpokọta site na ichekwa ya site na iji usoro nyocha Apache (.htpasswd), nke chọrọ ka ndị ọbịa tinye aha njirimara na paswọọdụ iji nweta akụrụngwa webụ.

Iji mee nke a, ịkwesịrị ịwụnye ngwugwu apache2-utils wee mepụta otu nzere maka njirimara mpaghara. Iji mezuo ebumnuche a, buru ụzọ nye iwu a ka ịwụnye ngwugwu apache2-utils:

# apt-get install apache2-utils	        [On Debian based Systems]
# yum install httpd-tools		[On RedHat based Systems]

7. Ọzọ, mepụta aha njirimara na paswọọdụ nke a ga-echekwa na faịlụ .htpass zoro ezo nke dị n'okpuru Apache default host Anakọtara-web ụzọ site n'inye iwu dị n'okpuru:

# htpasswd -c /var/www/html/collectd-web/.htpass  your_username

Gbalịa ichekwa faịlụ a site na ịnye ikike ndị a:

# chmod 700 /var/www/html/collectd-web/.htpass
# chown www-data /var/www/html/collectd-web/.htpass

8. Na nzọụkwụ ọzọ, mgbe ịmechara faịlụ .htpass, mepee onye ọbịa Apache maka edezi ma kụziere ihe nkesa ahụ ka ọ jiri htpasswd isi ihe nkesa-n'akụkụ nkwenye site n'ịgbakwunye ntuziaka ntụziaka dị ka e gosiri na nseta ihuenyo dị n'okpuru:

<Directory /var/www/html/collectd-web >
                AuthType Basic
                AuthName "Collectd Restricted Page"
                AuthBasicProvider file
                AuthUserFile /var/www/html/collectd-web/.htpass 
                Require valid-user
</Directory>

9. Nzọụkwụ ikpeazụ iji gosipụta mgbanwe bụ ịmalitegharịa ihe nkesa Apache site n'inye iwu dị n'okpuru wee gaa na Coollectd-web URL page dị ka akọwara n'elu.

Mmapụta kwesịrị ịpụta na ibe weebụ na-arịọ maka nzere gị. Jiri aha njirimara na okwuntughe emebere na mbụ iji nweta interface webụ anakọtara.

# service apache2 restart		[On Debian based Systems]
# service httpd restart			[On RedHat based Systems]

OR
---------------- For systemd init scripts ----------------
# systemctl restart apache2.service		
# systemctl restart http.service