راهکارها
بازارچه ابری
Arvan Docs

مستندات فنی

دسترسی به تمامی مستندات محصولات ابر آروان

Categories
Close
دسته‌بندی‌های سایت مشاهده دسته‌بندی‌ها بستن دسته‌بندی‌ها





مشاهده همه دسته‌ها All Categories

نصب LAMP روی CentOS 7

Time To Read ۵ دقیقه
Date ۱۹ تیر ۱۳۹۹

LAMP مخفف کلمات سیستم عامل Linux به همراه وب‌سرور Apache است. LAMP به مجموعه‌ای از نرم‌افزارهای متن‌باز گفته می‌شود که به صورت یک‌جا نصب می‌شود و به یک سرور این امکان را می‌دهد که وب‌سایت‎‌ها و وب‌اپ‌های داینامیک را میزبانی کند. LAMP در واقع دیتای سایت در دیتابیس MySQL ذخیره می‌شود که از MariaDB استفاده می‌کند و محتوای داینامیک توسط PHP پردازش می‌شود.

در این مطلب به شما آموزش می‌دهیم چطور LAMP را روی CentOS 7 VPS نصب کنید. CentOS نیاز به سیستم عامل لینوکس را تأمین می‌کند.

پیش‌نیازها

پیش از شروع، لازم است که یک حساب کاربری جدا و non-root روی سرور خود داشته باشید.

نصب Apache

امروزه آپاچی، مشهورترین وب‌سرور دنیا و یک انتخاب عالی برای هاستینگ یک وب‌سایت است.
می‌توانید آپاچی را به راحتی و با استفاده از پکیج‌منیجر CentOS یعنی yum نصب کنید. پکیج‌منیجر این امکان را فراهم می‌کند تا بیشتر نرم‌افزارها را بدون دردسر از repository که CentOS تأمین و نصب کنید.
برای شروع، این دستور را تایپ کنید:
sudo yum install httpd
این عملکردها را root privileges اجرا می‌کند، به همین دلیل از دستور sudo استفاده می‌کنیم که از شما برای اعتبارسنجی، رمز کاربری می‌خواهد.
حالا وب‌سرور شما نصب شده است.
پس از نصب می‌توانید Apache را روی VPS خود اجرا کنید:
sudo systemctl start httpd.service
حالا می‌توانید با روش spot check، درستی مرحله‌های طی‌شده را بسنجید. برای این کار، آدرس IP عمومی سرور خود را در مرورگر ببینید.
برای اینکه بدانید آدرس IP عمومی سرور شما چیست، به نکته‌ای که در سرفصل بعدی اشاره می‌کنیم، دقت کنید:
http://your_server_IP_address/
صفحۀ وب CentOS 7 Apache پیش‌فرض را می‌بینید. این صفحه برای اطلاع‌دهی و تست نمایان است و باید چیزی شبیه به این باشد:

اگر این صفحه را دیدید، یعنی وب‌سرور درست نصب شده.
آخرین قدم این است که به Apache اجازه بدهید که در بوت استارت شود. برای این منظور از دستور زیر استفاده کنید:
sudo systemctl enable httpd.service

پیدا کردن آدرس IP عمومی سرور

اگر آدرس IP عمومی سرور خود را نمی‌دانید، روش‌های مختلفی برای پیداکردنش وجود دارد. معمولاً این همان آدرسی است که از آن برای اتصال به سرور خود از طریق SHH استفاده می‌کنید.
می‌توانید با استفاده از دستورات یا کامندهایی، به این هدف برسید. با تایپ کردن iproute2 و کامند زیر آدرس را پیدا کنید:
ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
از هر طریقی که آدرس را پیدا می‌کنید، با تایپ کردن آن در مرورگر به سرور می‌روید.

نصب MySQL (MariaDB)

وب‌سرور را نصب کردید. حالا باید MariaDB را نصب کنید که جایگزینی برای MySQL است. MariaDB به دیتابیس دسترسی می‌دهد و در زمانی که سایت می‌تواند اطلاعات را ذخیره کند آن را ساماندهی می‌کند.
باز هم می‌توانید از yum برای نصب نرم‌افزار خود استفاده کنید. این‌بار از پکیج‌های کمکی یا helper هم استفاده می‌کنید. این پکیج به ایجاد ارتباط بین اجزا کمک می‌کند:
sudo yum install mariadb-server mariadb
بعد از تمام شدن نصب، برای اجرای MariaDB از دستور زیر استفاده کنید:
sudo systemctl start mariadb
حالا که MySQL در حال اجراست، می‌خواهیم یک اسکریپت امنیتی ساده اجرا کنیم؛ این کار برخی از پیش‌فرض‌های خطرناک را از بین می‌برد و دسترسی به دیتابیس را قطع می‌کند. برای شروع اسکریپت از دستور زیر استفاده کنید:
sudo mysql_secure_installation
اکنون رمز عبور از شما خواسته می‌شود. از آنجا که به تازگی MySQL را نصب کرده‌اید، رمز عبور ندارید. بنابراین با فشردن دکمۀ enter، این بخش را خالی بگذارید. اکنون از شما پرسیده می‌شود که قصد تنظیم رمز عبور دارید یا خیر. Y را انتخاب کنید و دستور زیر را اجرا کنید:
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 authorization.

New password: password
Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
… Success!

برای باقی سؤال‌ها کافی است کلید ENTER را بفشارید تا مقدارهای پیش‌فرض انتخاب شود. این کار، مقدارهای نمونه را پاک می‌کند و MySQL تغییرات جدید را می‌پذیرد.
آخرین کار این است که MariaDB را با استفاده از دستور زیر فعال کنید:
sudo systemctl enable mariadb.service
اکنون دیتابیس به صورت کامل نصب شده است.

نصب PHP

PHP بخشی از فرایند نصب است که کدها را برای نمایش محتوای داینامیک پردازش می‌کند. php می‎‌تواند اسکریپت‌ها را اجرا کند و به دیتابیس‌های MySQL متصل شود تا اطلاعات را جمع‌آوری کند. به علاوه محتوای پردازش‌شده را برای نمایش، به وب‌سرور برساند.
باز هم می‌توانید از yum برای نصب بخش‌های مختلف استفاده کنید. در این مرحله، پکیج php-mysql را هم اضافه می‌کنید:
sudo yum install php php-mysql
این دستور باید PHP را بدون مشکل نصب کند. برای اینکه آپاچی با PHP هماهنگ شود، آن را ری‌استارت کنید. برای این منظور از دستور زیر استفاده کنید:
sudo systemctl restart httpd.service

نصب ماژول‌های PHP

برای بهبود عملکرد PHP، می‌توانید ماژول‌هایی را نصب کنید. این مورد اختیاری است.
برای مشاهدۀ ماژول‌ها و کتاب‌خانه PHP، از دستور زیر استفاده کنید:
yum search php-
نتیجه، ماژول‌هایی را نشان می‌دهد که می‌توانید نصب کنید. توضیح کوتاهی از هرکدام به شما نمایش داده می‌شود:
php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php-cli.x86_64 : Command-line interface for PHP
php-common.x86_64 : Common files for PHP
php-dba.x86_64 : A database abstraction layer module for PHP applications
php-devel.x86_64 : Files needed for building PHP extensions
php-embedded.x86_64 : PHP library for embedding in applications
php-enchant.x86_64 : Enchant spelling extension for PHP applications
php-fpm.x86_64 : PHP FastCGI Process Manager
php-gd.x86_64 : A module for PHP applications for using the gd graphics library
. . .

برای توضیحات بیشتر از کارایی هرکدام از ماژول‌ها از سرچ گوگل یا دستور زیر استفاده کنید:
yum info package_name
به عنوان مثال برای مشاهدۀ کارایی ماژول php-fpm، کامند زیر را تایپ کنید:
yum info php-fpm
در کنار اطلاعات فراوان دیگر، چیزی شبیه به این را می‌بینید:
. . .
Summary : PHP FastCGI Process Manager
URL : http://www.php.net/
License : PHP and Zend and BSD
Description : PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI
: implementation with some additional features useful for sites of
: any size, especially busier sites.

پس از این اگر قصد نصب هرکدام از ماژول‌ها را داشتید، می‌توانید از کامند yum install استفاده کنید.
اگر قصد داشتید php-fpm را نصب کنید، باید تایپ کنید:
sudo yum install php-fpm
اگر قصد داشتید بیش از یک ماژول را نصب کنید، آن را لیست کنید و بین آنها فاصله بیندازید. به این شکل:
sudo yum install package1 package2 ...

حالا LAMP نصب شده اما باید PHP را تست کنید.

تست پردازش PHP روی وب سرور

برای اینکه مطمئن بشوید PHP درست نصب شده است، می‌توانید یک اسکریپت ساده بسازید.
نام info.php را برای این اسکریپت انتخاب کنید. برای Apache به منظور پیدا کردن فایل، باید آن را در یک محل خاص ذخیره کنید که web root نام دارد.
در CentOS 7 این بخش در /var/www/html/ جا دارد. برای ساختن فایل در این آدرس از دستور زیر استفاده کنید:
sudo vi /var/www/html/info.php
با این کار یک فایل خالی باز می‌کنید. باید متن زیر را که یک کد PHP است، در فایل قرار دهید:
<?php phpinfo(); ?>
پس از اتمام، فایل را ذخیره کنید و ببندید.
اگر از فایروال استفاده می‌کنید، از کامند زیر برای اجازه دادن به HTTP و HTTPS استفاده کنید:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

حالا می‌توانید تست کنید که آیا وب‌‎سرور می‌تواند به درستی محتوایی را که اسکریپت PHP تولید کرده، نمایش بدهد یا نه. برای این تست این صفحه را در وب‌سرور ببینید. حالا باز هم به آدرس عمومی IP سرور نیاز دارید.
باید این آدرس را ببینید:
http://your_server_IP_address/info.php
باید صفحه‌ای مثل این باز شود:

این صفحه اطلاعاتی دربارۀ سرور ارائه می‌دهد. این اطلاعات برای رفع مشکل و اطمینان از درستی تنظیمات کاربرد دارد.
اگر همه چیز خوب پیش رفت، PHP به درستی و مطابق انتظار عمل می‌کند.
بهتر است پس از تست، این فایل را حذف کنید؛ چون می‌تواند اطلاعات سرور شما را به کاربران غیررسمی بدهد. برای حذف آن از دستور زیر استفاده کنید:
sudo rm /var/www/html/info.php
اگر دوباره قصد دسترسی به این اطلاعات را داشتید، یک بار دیگر مسیری را که گفتیم انجام بدهید.
حالا که LAMP را نصب کرده‌اید، انتخاب‌های زیادی برای قدم بعدی دارید. با نصب این پلتفرم می‌توانید بسیاری از وب‌سایت‌ها و وب‌‌اپ‌ها را بر روی سرور نصب کنید.