نحوه نصب پشته Apache ، MySQL و PHP (FAMP) در FreeBSD 12.0

معرفی

پشته FAMP ، که با پشته LAMP در لینوکس قابل مقایسه است ، مجموعه ای از نرم افزارهای منبع باز است که به طور معمول در کنار هم نصب می شوند تا یک سرور FreeBSD بتواند میزبان وب سایت های پویا و برنامه های وب باشد. FAMP مخفف مخفف F reeBSD (سیستم عامل) ، یک pache (سرور HTTP) ، M ySQL (سرور پایگاه داده) و P HP (زبان برنامه نویسی برای پردازش محتوای PHP پویا) است.

در این راهنما ، عناصر Stack FAMP را با استفاده pkgاز مدیر بسته FreeBSD در نمونه FreeBSD 12.0 Vultr مستقر خواهیم کرد .

الزامات

قبل از شروع این راهنما به موارد زیر نیاز دارید:

  • FreeBSD 12.0 VPS.
  • کاربر دارای امتیازات اصلی یا sudoکاربر برای ایجاد تغییرات در پیکربندی.
  • آشنایی اساسی با سیستم FreeBSD و رابط خط فرمان توصیه می شود.

قبل از اینکه شروع کنی

نسخه FreeBSD را بررسی کنید.

uname -ro
# FreeBSD 12.0-RELEASE-p6

اطمینان حاصل کنید که سیستم FreeBSD شما به روز شده است.

freebsd-update fetch install
pkg update && pkg upgrade -y

بسته های لازم را نصب کنید.

pkg install -y sudo vim bash curl

با نام کاربری دلخواه خود یک حساب کاربری جدید ایجاد کنید. ما با استفاده از johndoe.

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

visudoدستور را اجرا کرده و %wheel ALL=(ALL) ALLخط را از آن خارج کنید ، تا اعضای wheelگروه بتوانند هر دستور را اجرا کنند.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

اکنون به کاربر تازه ایجاد شده خود با su:

su - johndoe

توجه: با نام کاربری خود جایگزین johndoeکنید.

منطقه زمانی را تنظیم کنید:

sudo tzsetup

مرحله 1 - نصب Apache

وب سرور Apache در حال حاضر یکی از محبوب ترین سرورهای وب در جهان است. این یک انتخاب عالی برای میزبانی وب سایت است.

شما می توانید Apache را با استفاده از مدیر بسته FreeBSD ، نصب کنید pkg. یک مدیر بسته به شما امکان می دهد اکثر نرم افزارها را با زحمت از مخزن نگهداری شده توسط FreeBSD نصب کنید. می توانید اطلاعات بیشتری در مورد نحوه استفاده pkgدر اینجا کسب کنید .

برای نصب Apache ، دستور زیر را صادر کنید:

sudo pkg install -y apache24

نسخه را بررسی کنید:

httpd -v
# Server version: Apache/2.4.39 (FreeBSD)

اکنون Apache را فعال کرده و شروع کنید:

sudo sysrc apache24_enable=yes
sudo service apache24 start

برای بررسی اینکه Apache شروع کرده است ، می توانید دستور زیر را اجرا کنید:

sudo service apache24 status

در نتیجه ، چیزی شبیه به:

# Output
apache24 is running as pid 17772.

با مراجعه به آدرس IP عمومی سرور در مرورگر وب خود می توانید تأیید کنید که Apache نصب شده و بدون خطا کار کرده است. هدایت به http://your_server_IP. صفحه پیش فرض " این کار می کند! " را مشاهده خواهید کرد.

مرحله 2 - نصب MySQL 8.0

اکنون که سرور وب خود را فعال و راه اندازی کرده اید ، زمان آن رسیده است که MySQL ، سیستم مدیریت پایگاه داده رابطه ای را نصب کنید. سرور MySQL پایگاه داده هایی را که سرور شما می تواند اطلاعات را ذخیره کند ، سازماندهی و فراهم می کند.

باز هم ، می توانید pkgبرای به دست آوردن و نصب نرم افزار خود استفاده کنید.

برای نصب MySQL 8.0با pkgاستفاده از این دستور:

sudo pkg install -y mysql80-client mysql80-server

این دستور آخرین نسخه سرویس دهنده و سرور MySQL را که هم اکنون نصب شده است نصب می کند 8.x.x.

نسخه را بررسی کنید:

mysql --version
# mysql  Ver 8.0.16 for FreeBSD12.0 on amd64 (Source distribution)

اکنون MySQL را فعال کرده و شروع کنید:

sudo sysrc mysql_enable=yes
sudo service mysql-server start

برای بررسی اینکه MySQL شروع شده است می توانید دستور زیر را اجرا کنید:

sudo service mysql-server status

شما چیزی شبیه به موارد زیر را مشاهده می کنید:

# Output
mysql is running as pid 19171.

به عنوان یک روش خوب ، شما ممکن است mysql_secure_installationاسکریپت امنیتی را اجرا کنید که برخی پیش فرض های ناامن را حذف کرده و دسترسی اندکی به سیستم دیتابیس شما را محدود می کند.

sudo mysql_secure_installation

از شما خواسته می شود رمزعبور را تنظیم کنید و به دنبال آن سؤال های دیگری را دنبال کنید. ENTERبرای انتخاب پیش فرض ، یک رمزعبور قوی وارد کرده و سپس برای سایر سؤالات را فشار دهید .

مرحله 3 - نصب PHP 7.3

PHP یک زبان برنامه نویسی سمت سرور است که برای توسعه وب طراحی شده است. PHP یک جزء ضروری از پشته FAMP است. همچنین ، Python یا Perl معمولاً به جای PHP استفاده می شوند. با این حال ، PHP به عنوان محبوب ترین گزینه اغلب استفاده می شود. همراه با بانک اطلاعاتی ، به وب سایتها یا برنامه های شما رفتار پویا می بخشد.

یک بار دیگر pkgسیستم را نصب کنید تا اجزای PHP را نصب کنید.

برای نصب PHP 7.3 با pkgاین دستور را اجرا کنید:

sudo pkg install -y php73 php73-mysqli mod_php73

این نصب php73، mod_php73و php73-mysqliبسته.

نسخه را بررسی کنید.

php --version
# PHP 7.3.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies

نمونه پرونده پیکربندی PHP را با این دستور کپی کنید:

sudo cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

اکنون PHP-FPM را فعال کرده و شروع کنید:

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

برای بررسی اینکه PHP-FPM شروع شده است می توانید دستور زیر را اجرا کنید:

sudo service php-fpm status

در نتیجه ، چیزی شبیه به:

# Output
php_fpm is running as pid 23005.

نصب ماژول های PHP (اختیاری)

برای تقویت قابلیت PHP ، می توانید برخی از ماژول های اضافی را به صورت اختیاری نصب کنید.

برای دیدن تکمیل شده در ماژول های PHP ، می توانید این کار را انجام دهید:

php -m
# [PHP Modules]
# Core
# date
# libxml
# mysqlnd
# pcre
# Reflection
# SPL
# standard

# [Zend Modules]

برای جستجوی ماژول های PHP موجود ، می توانید از این دستور استفاده کنید:

pkg search ^php73-*

نتایج بیشتر ماژول های PHP 7.3 هستند که می توانید نصب کنید:

# Output
# php73-7.3.7                    PHP Scripting Language
# php73-Ice37-3.7.2              Modern alternative to object middleware such as CORBA/COM/DCOM/COM+
# php73-aphpbreakdown-2.2.2      Code-Analyzer for PHP for Compatibility Check-UP
# php73-aphpunit-1.8             Testing framework for unit tests
# php73-bcmath-7.3.7             The bcmath shared extension for php
# php73-brotli-0.7.0             Brotli extension for PHP
# php73-bsdconv-11.5.0           PHP wrapper for bsdconv
# php73-bz2-7.3.7                The bz2 shared extension for php
# php73-calendar-7.3.7           The calendar shared extension for php
# php73-composer-1.8.6           Dependency Manager for PHP
# php73-ctype-7.3.7              The ctype shared extension for php
# php73-curl-7.3.7               The curl shared extension for php
# . . .

اگر بعد از تحقیق تصمیم گرفتید که نیاز به نصب پکیج دارید ، می توانید با استفاده از pkg installدستور این کار را انجام دهید. اکثر برنامه های وب PHP به ماژول های اضافی نیاز دارند ، بنابراین خوب است بدانید که چگونه می توانید آنها را جستجو کنید.

مرحله 4 - پیکربندی Apache برای استفاده از ماژول PHP

قبل از استفاده از PHP ، باید آن را پیکربندی کنید تا با آپاچی کار کند.

sudo vi /usr/local/etc/apache24/modules.d/001_mod-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>

فایل را ذخیره کنید و خارج شوید با :+ W+Q

پیکربندی Apache را بررسی کنید.

sudo apachectl configtest

از آنجا که تغییرات پیکربندی را در آپاچی ایجاد کرده اید ، باید سرویس هایی را که باید اعمال شود بارگذاری مجدد کنید. در غیر اینصورت ، Apache همچنان با پیکربندی قبلی کار خواهد کرد.

sudo apachectl restart

مرحله 5 - تست پردازش PHP

برای آزمایش اینکه سیستم شما به درستی برای PHP پیکربندی شده است ، می توانید یک اسکریپت بسیار ابتدایی PHP ایجاد کنید. شما این اسکریپت را صدا خواهید کرد info.php. به طور پیش فرض ، DocumentRootتنظیم شده است /usr/local/www/apache24/data. info.phpبا تایپ کردن می توانید پرونده را در آن مکان ایجاد کنید:

sudo vim /usr/local/www/apache24/data/info.php

این کد را به آن پرونده اضافه کنید:

<?php phpinfo(); ?>

به http://your_server_IP/info.phpصفحه زیر بروید و صفحه زیر را مشاهده خواهید کرد:

نحوه نصب پشته Apache ، MySQL و PHP (FAMP) در FreeBSD 12.0

پس از نصب و راه اندازی پشته FAMP باید info.phpپرونده را حذف کنید تا از افشای اطلاعات مربوط به سرور به عموم مردم جلوگیری شود.

sudo rm /usr/local/www/apache24/data/info.php

نتیجه

تبریک می گویم ، شما یک موفقیت پشته FAMP را در FreeBSD 12.0 VPS خود نصب کردید. اکنون شما گزینه های مختلفی برای انتخاب بعدی دارید. شما سکویی نصب کرده اید که به شما امکان می دهد انواع وب سایت ها و نرم افزارهای وب را در بالای آن نصب کنید.



Leave a Comment

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد