Yadda ake Sanya Apache, MariaDB da PHP (FAMP) Stack akan FreeBSD


Wannan jagorar zai bayyana yadda ake shigarwa da daidaita FBAMP a cikin tsarin aiki na FreeBSD, wanda yayi kama da tarin LAMP akan Linux. FBAMP taƙaitaccen bayani ne wanda ke tsaye ga tarin software wanda ya dogara da FreeBSD OS, uwar garken Apache HTTP, mashahurin uwar garken gidan yanar gizo mai buɗewa a cikin intanit, MariaDB tsarin sarrafa bayanai (RDBMS), cokali mai yatsa na injin bayanai na MySQL, da uwar garken PHP. - gefe.

Abubuwan bukatu

  1. Sabon shigarwa na FreeBSD
  2. Shirye-shiryen Farko na FreeBSD
  3. Haɗin kai tsaye ko SSH idan akwai haɗin nesa zuwa FreeBSD.
  4. Adireshin IP na tsaye wanda aka saita akan hanyar sadarwa.

Mataki 1: Shigar Apache akan FreeBSD

1. Sabis na farko da za mu shigar shine Apache HTTP uwar garken. Ta hanyar tsoho, FreeBSD yana ba da nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan nau'ikan aikin lokaci daban-daban don sabar gidan yanar gizon Apache.

An riga an haɗa nau'ikan su cikin fakitin binary kuma an samar da su ta wuraren ajiya na PORTS na FreeBSD. Don nuna duk binaries na fakitin Apache da PORTS suka bayar, ba da umarni mai zuwa.

# ls /usr/ports/www/ | grep apache

Hakanan zaka iya nemo fakitin Apache da aka riga aka cika akan FreeBSD ta hanyar ba da umarnin da ke ƙasa.

# pkg search apache2

2. Na gaba, shigar da sabuwar sigar uwar garken HTTP Apache tare da duk samfuran da ake buƙata ta hanyar ba da umarni mai zuwa.

# pkg install apache24

3. Bayan an shigar da sabar gidan yanar gizon Apache akan tsarin, ba da umarni mai zuwa don kunna tsarin daemon a cikin FreeBSD.

# sysrc apache24_enable="yes"

Wata hanyar da za a iya kunna Apache daemon ita ce yin gyara da hannu da haɗa layin apache24_enable=\yes\ a cikin /etc/rc.conf fayil kamar yadda aka kwatanta a hoton da ke ƙasa.

4. A ƙarshe, don gwada idan uwar garken yanar gizon yana aiki da kyau, fara Apache daemon ta hanyar ba da umarnin da ke ƙasa kuma ziyarci shafin yanar gizon tsoho ta hanyar nuna mai bincike zuwa adireshin IP na uwar garken FQDN (http://IP-orFQDN) ) kamar yadda aka nuna a hoton da ke ƙasa.

# service apache24 start

Tsohuwar adireshin gidan yanar gizo na sabar yanar gizo ta Apache a cikin FreeBSD 11.x yana cikin /usr/local/www/apache24/data/hanyar tsarin. A can za ku sami ƙaramin fayil na index.html wanda za ku iya gyara kamar yadda ya fi dacewa.

Mataki 2: Sanya PHP akan FreeBSD

5. FreeBSD 11.x yana ba da nau'ikan nau'ikan PHP da aka fassara fassarar gefen uwar garken a cikin binaries da aka riga aka cika. Don samun jerin duk fakitin nau'ikan nau'ikan nau'ikan PHP da aka samar da ma'ajiyar tashar jiragen ruwa ta FreeBSD suna ba da umarni mai zuwa.

# ls /usr/ports/lang/ | grep php

Wata madadin hanyar neman duk nau'ikan fakitin PHP na FreeBSD shine ta hanyar aiwatar da umarnin da ke ƙasa.

# pkg search -o php

6. Don nemo duk wani binaries da FreeBSD ke bayarwa don takamaiman nau'in PHP (5 ko 7 a halin yanzu) gudanar da umarnin da ke ƙasa. Yi amfani da ƙasan umarni don kunkuntar da kewaya cikin abubuwan fitarwa.

# pkg search php5 |less
# pkg search php7

7. Don ƙarin bayani kan abin da nau'ikan nau'ikan nau'ikan nau'ikan PHP na al'ada ke bayarwa, gudanar da umarni mai zuwa kamar yadda aka bayyana a ƙasa, wanda ke nuna duk samfuran da ke akwai don sigar PHP 7.1.

# pkg search php71

8. A cikin wannan jagorar za mu shigar da sakin PHP 7.1 don tarin FBAMP ɗin mu. Ba da umarni mai zuwa don shigar da PHP tare da wasu mahimman kayayyaki da ake buƙata don shigarwar CMS na yau da kullun.

# pkg install php71 mod_php71 php71-mbstring php71-mcrypt php71-zlib php71-curl php71-gd php71-json 

9. Na gaba, muna buƙatar ƙirƙirar fayil ɗin sanyi na php.conf don uwar garken gidan yanar gizon Apache a /usr/local/etc/apache24/Includes/ system path with the following content.

# nano /usr/local/etc/apache24/Includes/php.conf

Ƙara layin masu zuwa zuwa fayil ɗin php.conf.

<IfModule dir_module>
    DirectoryIndex index.php index.html
    <FilesMatch "\.php$">
        SetHandler application/x-httpd-php
    </FilesMatch>
    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>
</IfModule>

10. Don gwada idan ƙofar PHP tana aiki kamar yadda aka sa ran tare da sabar gidan yanar gizo na Apache, ƙirƙirar fayil ɗin info.php a cikin /usr/local/www/apache24/data/system path, wanda shine tushen tushen tushen tushen gidan yanar gizon Apache. uwar garken yanar gizo.

# echo '<?php phpinfo();  ?>' | tee -a /usr/local/www/apache24/data/info.php

Sake kunna Apache daemon don aiwatar da canje-canje.

# service apache24 restart

Na gaba, ziyarci URI mai zuwa a cikin mai bincike don duba taƙaicen PHP.

http://IP-or-FQDN/info.php 

11. Domin kunna PHP ini Confinition fayil don samar da wadannan umarni. Kuna iya canza fayil ɗin samarwa na php.ini don canza saitunan PHP daban-daban a cikin tarin FBAMP ɗinku.

# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini-production.bakup
# ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Mataki 3: Sanya MariaDB akan FreeBSD

12. Na ƙarshe bacewar bangaren mu FBAMP tari ne MySQL database uwar garken. FreeBSD 11.x yana ba da fakiti sama da 1000 don bayanan bayanai daban-daban.

Domin nuna abubuwan da ke akwai don MariaDB ko MySQL bayanai, ba da umarni masu zuwa. A cikin wannan jagorar za mu shigar da bayanan MariaDB akan MySQL (wanda yanzu mallakar Oracle ne kuma ya haɓaka shi sosai).

# ls -al /usr/ports/databases/ | grep mariadb
# pkg search -o mariadb
# ls -al /usr/ports/databases/ | grep mysql
# pkg search -o mysql5

13. A cikin wannan jagorar za mu shigar da sabuwar sigar uwar garken bayanai na MariaDB a cikin FreeBSD, wanda a halin yanzu ana wakilta ta hanyar sakin fakitin binary mariadb102.

Gudun umarni mai zuwa don shigar da uwar garken MariaDB da abokin ciniki da kuma tsarin PHP 7.1 da ake buƙata don samun damar bayanai ta hanyar ƙofar uwar garken Apache.

# pkg install mariadb102-server mariadb102-client php71-mysqli

14. Na gaba, kunna tsarin uwar garken MariaDB-fadi kuma fara daemon bayanai ta hanyar aiwatar da umarni masu zuwa.

# sysrc mysql_enable="yes" 
# service mysql-server start

15. Don tabbatar da ma'aunin bayanai, gudanar da rubutun mysql_secure_installation. Yi amfani da ɓangarorin fitowar rubutun da ke ƙasa don taurare MariaDB.

# /usr/local/bin/mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
 
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
 
Enter current password for root (enter for none):
OK, successfully used password, moving on...
 
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
 ... Success!
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
 ... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
 ... Success!
Cleaning up...
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

16. Ta hanyar tsoho, MariaDB daemon yana sauraron haɗin yanar gizo a waje da localhost akan tashar jiragen ruwa 3306/TCP. Gudun lsof ko sockstat umarni don samun jihar soket na MariaDB. Wannan saitin yana da haɗari kuma yana fallasa sabis ɗin zuwa hare-haren cibiyar sadarwa na waje.

# lsof -i4 -i6
# sockstat -4 -6

17. Idan ba ku buƙatar samun damar nesa zuwa MariaDB, tabbatar da MariaDB daemon yana sauraron localhost kawai, ta hanyar ba da umarnin da ke ƙasa. Daga baya, sake kunna sabis na MariaDB don aiwatar da canje-canje.

# sysrc mysql_args="--bind-address=127.0.0.1"
# service mysql-server restart
or
# /usr/local/etc/rc.d/mysql-server restart

18. Bugu da ƙari, gudanar da umarni na lsof ko sockstat don jera soket ɗin cibiyar sadarwa na MariaDB. Ya kamata soket ɗin ya ɗaure kuma ya saurari localhost yanzu, kamar yadda aka kwatanta a hoton da ke ƙasa.

# lsof -i4 | grep mysql
# netstat -an | grep 3306
# sockstat -4 | grep 3306

19. Don gwada MariaDB database connectivity daga na'ura wasan bidiyo bayar da wadannan umarni. Shigar da kalmar sirri ta MySQL a cikin gaggawa kuma jerin tsoffin bayanan bayanai yakamata a nuna su a allon wasan bidiyo na ku kamar yadda aka kwatanta a hoton da ke ƙasa.

# mysql -u root -p -e "show databases"

Shi ke nan! Kun sami nasarar shigar da sabar gidan yanar gizo ta Apache tare da bayanan MariaDB da mai fassarar PHP a cikin FreeBSD. Yanzu zaku iya fara tura gidan yanar gizon WordPress a cikin ɗan lokaci.

A kan koyawa ta gaba za mu tattauna wasu batutuwa na FPBAMP masu ci gaba, kamar yadda ake kunnawa da ƙirƙirar runduna masu kama da Apache, ba da damar sake rubutawa da fayil ɗin .htaccess ke buƙata don yin aiki yadda ya kamata da yadda ake amintar haɗin Apache ta amfani da takardar shaidar Sa hannu ko kyauta. Takaddun shaida wanda Let's Encrypt mahaluži ke bayarwa.