Kā instalēt Apache, MariaDB un PHP (FAMP) skursteni FreeBSD


Šajā rokasgrāmatā tiks aprakstīts, kā instalēt un konfigurēt FBAMP FreeBSD operētājsistēmā, kas ir līdzīga LAMP kaudzei Linux. FBAMP ir saīsinājums, kas apzīmē programmatūras kolekciju, kuras pamatā ir FreeBSD OS, Apache HTTP serveris, vispopulārākais atvērtā koda tīmekļa serveris internetā, MariaDB relāciju datu bāzes pārvaldības sistēma (RDBMS), MySQL datu bāzes dzinēja dakša un PHP serveris -pusē.

Prasības

  1. jauna FreeBSD instalācija
  2. FreeBSD sākotnējās konfigurācijas
  3. Tieša piekļuve konsolei vai SSH attālā savienojuma gadījumā ar FreeBSD.
  4. statiska IP adrese, kas konfigurēta tīkla saskarnē.

1. darbība: instalējiet Apache vietnē FreeBSD

1. Pirmais pakalpojums, ko instalēsim, ir Apache HTTP serveris. Pēc noklusējuma FreeBSD Apache tīmekļa serverim piedāvā vairākas versijas ar dažādiem izpildlaika darba moduļiem.

Versijas ir iepriekš apkopotas binārā paketē, un tās nodrošina FreeBSD PORTS krātuves. Lai parādītu visus PORTS nodrošinātos Apache pakotņu bināros failus, izsniedziet šādu komandu.

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

Varat arī meklēt pieejamos iepriekš izpildītos Apache paketus FreeBSD, izsniedzot zemāk esošo komandu.

# pkg search apache2

2. Pēc tam instalējiet Apache HTTP servera jaunāko versiju ar visiem nepieciešamajiem moduļiem, izsniedzot šādu komandu.

# pkg install apache24

Pēc tam, kad sistēmā ir instalēts Apache tīmekļa serveris, izdodiet šādu komandu, lai FreeBSD iespējotu dēmonu visā sistēmā.

# sysrc apache24_enable="yes"

Alternatīva Apache dēmona iespējošanas metode būtu manuāli rediģēt un pievienot apache24_enable = "yes" /etc/rc.conf failā līniju, kā parādīts zemāk esošajā ekrānuzņēmumā.

4. Visbeidzot, lai pārbaudītu, vai tīmekļa serveris darbojas pareizi, palaidiet Apache dēmonu, izsniedzot komandu zemāk, un apmeklējiet noklusējuma tīmekļa lapu, norādot pārlūkprogrammu uz sava servera IP adresi FQDN ( http:// IP-orFQDN ), kā parādīts zemāk esošajā ekrānuzņēmumā.

# service apache24 start

Apache tīmekļa servera noklusējuma tīmekļa saknes direktorijs FreeBSD 11.x atrodas sistēmas ceļā /usr/local/www/apache24/data/. Tur jūs atradīsit nelielu index.html failu, kuru vēlams rediģēt.

2. solis: Instalējiet PHP uz FreeBSD

5. FreeBSD 11.x piedāvā vairākas PHP interpretētas servera valodas valodas versijas, kas iepakotas iepriekš izpildītos bināros failos. Lai iegūtu visu pieejamo PHP versiju pakotņu sarakstu, ko nodrošina FreeBSD portu krātuves, izsniedziet šādu komandu.

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

Alternatīva metode visu pieejamo FreeBSD PHP pakotņu versiju meklēšanai ir palaist zemāk esošo komandu.

# pkg search -o php

6. Lai meklētu visus pieejamos bināros failus, ko FreeBSD nodrošina konkrētai PHP versijai (pašlaik ir 5 vai 7 versijas), izpildiet tālāk norādītās komandas. Izmantojiet mazāk komandu, lai sašaurinātu un pārvietotos pa izvadi.

# pkg search php5 |less
# pkg search php7

7. Lai precīzāk norādītu, kādus moduļus nodrošina pielāgota PHP versija, izpildiet šādu komandu, kā aprakstīts tālāk, kurā tiek parādīti visi PHP 7.1 versijai pieejamie moduļi.

# pkg search php71

8. Šajā ceļvedī mēs instalēsim PHP 7.1 laidienu mūsu FBAMP kaudzei. Izdodiet šādu komandu, lai instalētu PHP ar dažiem vissvarīgākajiem moduļiem, kas nepieciešami tipiskai CMS instalēšanai.

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

9. Tālāk mums jāizveido Apache tīmekļa servera konfigurācijas fails php.conf mapē/usr/local/etc/apache24/Includes/system path ar šādu saturu.

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

Pievienojiet šādas rindiņas failam 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. Lai pārbaudītu, vai PHP vārteja darbojas, kā paredzēts, ar Apache tīmekļa serveri, izveidojiet PHP info.php failu mapē/usr/local/www/apache24/data/system, kas ir Apache noklusējuma tīmekļa dokumenta saknes ceļš. tīmekļa serveris.

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

Restartējiet Apache dēmonu, lai lietotu izmaiņas.

# service apache24 restart

Pēc tam pārlūkprogrammā apmeklējiet šo URI, lai skatītu PHP kopsavilkumu.

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

11. Lai aktivizētu PHP ini konfigurācijas failu ražošanai, izdodiet šādas komandas. Varat modificēt php.ini ražošanas failu, lai mainītu dažādus PHP iestatījumus savā FBAMP kaudzē.

# 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

3. solis: Instalējiet MariaDB uz FreeBSD

12. Pēdējais mūsu FBAMP kaudzes trūkstošais komponents ir MySQL datu bāzes serveris. FreeBSD 11.x piedāvā vairāk nekā 1000 paketes dažādām datu bāzēm.

Lai parādītu, kādi komponenti ir pieejami MariaDB vai MySQL datu bāzēm, izdodiet šādas komandas. Šajā ceļvedī mēs instalēsim MariaDB datu bāzi, izmantojot MySQL (kas tagad ir Oracle īpašniece un aktīvi attīstīta).

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

13. Šajā rokasgrāmatā mēs FreeBSD instalēsim jaunāko MariaDB datu bāzes servera versiju, kuru pašlaik pārstāv mariadb102 binārā pakotnes izlaidums.

Palaidiet šo komandu, lai instalētu MariaDB serveri un klientu un nepieciešamo PHP 7.1 moduli, kas nepieciešams, lai piekļūtu datu bāzei, izmantojot Apache servera vārteju.

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

14. Pēc tam iespējojiet MariaDB serveri visā sistēmā un sāciet datubāzes dēmonu, izpildot šādas komandas.

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

15. Lai aizsargātu datu bāzi, palaidiet mysql_secure_installation skriptu. Lai nocietinātu MariaDB, izmantojiet zemāk esošo skripta izvades fragmentu.

# /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. Pēc noklusējuma MariaDB dēmons klausās tīkla savienojumus ārpus localhost portā 3306/TCP. Palaidiet komandu lsof vai sockstat, lai iegūtu MariaDB ligzdas stāvokli. Šī konfigurācija ir bīstama un pakļauj pakalpojumu ārējiem tīkla uzbrukumiem.

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

17. Ja jums nav nepieciešama attāla piekļuve MariaDB, pārliecinieties, ka MariaDB dēmons klausās tikai localhost, izsniedzot zemāk esošo komandu. Pēc tam restartējiet MariaDB pakalpojumu, lai lietotu izmaiņas.

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

18. Atkal palaidiet komandu lsof vai sockstat, lai uzskaitītu MariaDB tīkla ligzdu. Ligzdai vajadzētu iesiet un klausīties vietnē localhost tagad, kā parādīts zemāk esošajā attēlā.

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

19. Lai pārbaudītu MariaDB datu bāzes savienojamību no konsoles, izsniedziet šādu komandu. Ievadiet MySQL saknes paroli uzvednē, un konsoles ekrānā jāparāda noklusējuma datu bāzu saraksts, kā parādīts zemāk esošajā attēlā.

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

Tas ir viss! Jūs esat veiksmīgi instalējis Apache tīmekļa serveri ar MariaDB datu bāzi un PHP tulku FreeBSD. Tagad jūs varat sākt izvietot WordPress vietni īsā laikā.

Nākamajā apmācībā mēs apspriedīsim dažas uzlabotas FPBAMP tēmas, piemēram, kā iespējot un izveidot Apache virtuālos resursdatorus, iespējot pārrakstīšanas moduli, kas nepieciešams .htaccess failam, lai tas darbotos pareizi, un kā nodrošināt Apache savienojumus, izmantojot pašparakstītu sertifikātu vai bezmaksas Sertifikātu piedāvā entītija Let's Encrypt.