تغییرات اخیر

در اینجا اطلاعیه‌ها، نسخه‌ها و تغییرات جدید لیارا فهرست می‌شوند.

آموزش نصب LAMP روی اوبونتو ۲۲.۰۴


۲۵ فروردین ۱۴۰۴

استک LAMP، مجموعه‌ای از نرم‌افزارهای متن‌باز و رایگان است که برای ارائه وب‌سایت‌های داینامیک نوشته‌شده با PHP استفاده می‌شود. LAMP نام مخففی است که به یک سیستم‌عامل Linux (لینوکس)، یک وب‌سرور Apache (آپاچی)، یک پایگاه داده MySQL (مای‌اس‌کیوال) و یک زبان پردازشی PHP (پی‌اچ‌پی) اشاره دارد. این پلتفرم به دلیل رایگان بودن و دربرگرفتن ابزارهای ضروری برای توسعه‌دهندگان اهمیت زیادی دارد. LAMP را می‌توان روی سیستم‌عامل‌های مختلف نصب کرد، ما در این آموزش، نحوه نصب آن بر روی اوبونتو ۲۲.۰۴ را بررسی خواهیم کرد.

پیش‌نیازها

برای تکمیل این آموزش، باید یک سرور مجازی Ubuntu با یک کاربر غیر روت (non-root) دارای دسترسی sudo و یک فایروال (Firewall) فعال داشته باشید. اگر هنوز این پیش‌نیازها را آماده نکرده‌اید، می‌توانید راهنمای راه‌اندازی اولیه سرور مجازی با اوبونتو را دنبال کنید.

پس از راه‌اندازی سرور، ممکن است بخواهید پیکربندی وب‌سرور و پایگاه داده را نیز انجام دهید. در این صورت، نحوه نصب انجین ایکس، MySQL و پی اچ پی (LEMP) بر روی سرور مجازی لینوکس می‌تواند راهنمای مفیدی باشد.

در ادامه بخوانید:

  • مرحله اول: آموزش نصب LAMP؛ نصب Apache و بروزرسانی فایروال
  • مرحله دوم: آموزش نصب LAMP؛ نصب MySQL
  • مرحله سوم: آموزش نصب LAMP؛ نصب PHP
  • مرحله چهارم: آموزش نصب LAMP؛ ایجاد یک هاست مجازی برای وب سایت
  • مرحله پنجم: آموزش نصب LAMP؛ تست پردازش PHP روی وب سرور
  • مرحله ششم: آموزش نصب LAMP؛ تست اتصال دیتابیس از PHP (اختیاری)
  • جمع‌بندی
  • سوالات متداول
آموزش نصب LAMP روی اوبونتو ۲۲.۰۴

مرحله اول: آموزش نصب LAMP؛ نصب Apache و بروزرسانی فایروال

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

مرحله اول، به‌روزرسانی کش Package Manager است. اگر برای اولین بار در این Session از sudo استفاده می‌کنید، لازم است رمز عبور خود را وارد کنید تا دسترسی شما برای مدیریت پکیج‌های سیستم از طریق apt تأیید شود. برای انجام این کار، دستور زیر را اجرا کنید:

sudo apt update

سپس، آپاچی را با دستور زیر نصب کنید:

sudo apt install apache2

در این مرحله باید نصب Apache را با فشردن دکمه Y و سپس ENTER، تأیید کنید. پس از اتمام نصب، باید تنظیمات فایروال را برای اجازه دادن به ترافیک HTTP تغییر دهید. ابزار پیش‌فرض پیکربندی فایروال در اوبونتو Uncomplicated Firewall (UFW) نام دارد. این ابزار دارای پروفایل‌های مختلفی برای برنامه‌ها است که می‌توانید از آن‌ها استفاده کنید. برای فهرست کردن تمام پروفایل‌های موجود UFW، این دستور را اجرا کنید:

sudo ufw app list

خروجی:

Available applications:
  Apache
  Apache Full
  Apache Secure
  OpenSSH

هر یک از پروفایل‌هایی که در لیست خروجی می‌بینید، معنی خاصی دارند که عبارت است از:

  • Apache: برای باز کردن پورت 80  (فقط برای ترافیک وب عادی و رمزگذاری نشده)
  • Apache Full: برای باز کردن پورت 80 (ترافیک وب عادی و رمزگذاری نشده) و پورت 443 (ترافیک رمزگذاری شده TLS/SSL)
  • Apache Secure: تنها برای باز کردن پورت 443 (ترافیک رمزگذاری شده TLS/SSL)

بهتر است در این مرحله تنها اتصال‌های پورت 80 را مجاز کنید؛ زیرا از آنجایی که یک آپاچی جدید را نصب کرده‌اید، هنوز پیکربندی گواهی TLS/SSL ندارید که ترافیک HTTPS را روی سرور مجاز کند.

این مطلب شاید برای شما مفید باشد: آشنایی با قوانین و دستورات رایج فایروال (UFW)

برای تأیید مجوز ترافیک تنها در پورت 80، از پروفایل Apache استفاده کنید و دستور زیر را وارد کنید:

sudo ufw allow in "Apache"

تغییرات را با دستور زیر تائید کنید:

sudo ufw status

خروجی به‌صورت زیر خواهد بود:

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
Apache                     ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
Apache (v6)                ALLOW       Anywhere (v6)

پس از دریافت خروجی بالا، ترافیک در پورت 80 از طریق فایروال مجاز می‌شود. می‌توانید با رفتن به آدرس IP عمومی سرور خود در مرورگر، بررسی کنید که همه چیز طبق برنامه پیش رفته است. در زیر صفحه وب پیش‌فرض آپاچی در اوبونتو ۲۲.۰۴ را می‌بینید:

http://your_server_ip
آموزش نصب LAMP

اگر این صفحه را در مرورگر خود ببینید، وب سرور به درستی نصب شده و از طریق فایروال شما قابل دسترسی است.

همچنین بخوانید: نحوه تنظیم سرور وب آپاچی روی سرور مجازی لینوکس (VPS)

نحوه یافتن آدرس IP عمومی سرور

در بخش‌های قبلی آموزش نصب LAMP گفتیم که برای بررسی اینکه وب سرور شما به‌درستی نصب شده، لازم است که آدرس IP عمومی سرور را در مرورگر وارد کنید. اگر نمی‌دانید که آدرس IP شما چیست، روش‌های مختلفی را می‌توانید برای پیدا کردن آن امتحان کنید. آدرس IP عمومی سرور شما همان آدرسی است که برای اتصال به سرور ازطریق SSH نیاز دارید.

پیشنهاد مطالعه: SSH چیست؟ + نحوه استفاده از SSH برای اتصال به سرور مجازی (VPS)

روش‌های مختلفی برای بررسی این آدرس در خط فرمان وجود دارد. می‌توانید از ابزار iproute2 برای دریافت آدرس IP خود استفاده کنید که با تایپ کد زیر امکان‌پذیر است:

ip addr show ens3 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

با این دستور، ممکن است دو یا سه خط آدرس به شما نشان داده شود، هرچند آن‌ها آدرس‌های درستی هستند، اما سیستم شما ممکن است فقط بتواند یکی از آنها را استفاده کند؛ به‌همین دلیل باید هر کدام از آن‌ها را امتحان کنید. روش دیگر پیدا کردن آدرس IP، استفاده ا ز ابزار curl است که ارتباطات خارجی برقرار می‌کند و از خارج از شبکه شما می‌پرسد، آی پی شما چیست؟ در این روش، از یک سرور خاص پرسیده می‌شود که آدرس IP شما چیست:

curl http://icanhazip.com

به‌طور کلی تفاوتی ندارد که از کدام یک از این روش‌ها استفاده می‌کنید، در هر صورت بهتراست آدرس IP که دریافت می‌کنید را در مرورگر خود تایپ کنید تا مطمئن شوید سرور در حال اجراست.

همین الان، بدون کمترین پیچیدگی، سرور مجازی خودتون رو در کمتر از ۳۰ ثانیه، راه‌اندازی کنید.
✅ عملکرد پایدار ✅ ترافیک نامحدود ✅ هزینه به‌صرفه
خرید سرور مجازی ابری

مرحله دوم: آموزش نصب LAMP؛ نصب MySQL

حالا که وب‌سرور را نصب کردیم، باید مراحل آموزش نصب LAMP را دنبال کنیم. پس از وب‌سرور نوبت به دیتابیس می‌رسد که برای ذخیره و مدیریت داده‌های وب‌سایت، باید آن را نصب کنیم. از MySQL به عنوان یک سیستم مدیریت دیتابیس محبوب در محیط‌های PHP استفاده می‌شود. برای نصب این نرم‌افزار مجددا از دستور apt استفاده کنید:

sudo apt install mysql-server

پس از نصب، برای تائید کلید Y و سپس ENTER را بزنید. بعد از پایان نصب، پیشنهاد می‌شود یک اسکریپت امنیتی که از قبل روی MySQL نصب شده را اجرا کنید. این اسکریپت به برخی از تنظیمات پیش‌فرض ناامن کمک می‌کند تا دسترسی به دیتابیس را ایمن کند.

هشدار: از تیر/مرداد ۱۴۰۱، هنگامی که اسکریپت mysql_secure_installation را بدون برخی از پیکربندی‌ها اجرا می‌کنید، خطایی رخ می‌دهد. دلیل خطا این است که این اسکریپت سعی می‌کند یک رمز عبور برای اکانت روت نصب MySQL تنظیم کند، اما به‌طور پیش‌فرض در نصب اوبونتو، این اکانت برای اتصال با استفاده از پسورد پیکربندی نشده است.

قبل از این تاریخ، این اسکریپت پس از تلاش برای تنظیم رمز عبور اکانت روت، بی‌صدا با مشکل مواجه می‌شد و به بقیه درخواست‌ها ادامه می‌داد. با این حال، از زمان نوشتن این اسکریپت پس از وارد کردن و تایید پسورد، خطای زیر را برمی‌گرداند:

Output
 ... Failed! Error: SET PASSWORD has no significance for user 'root'@'localhost' as the authentication method used doesn't store authentication data in the MySQL server. Please consider using ALTER USER instead if you want to change authentication parameters.

New password:

این خطا، اسکریپت را به یک حلقه بازگشتی هدایت می‌کند که فقط با بستن پنچره ترمینال می‌توانید از آن خارج شوید. اسکریپت mysql_secure_installation برای شما مفید است زیرا اقداماتی برای ایمن نگهداشتن MySQL انجام می‌دهد. برای جلوگیری از ورود به این حلقه بازگشتی، ابتدا باید نحوه احراز هویت کاربر root را مشخص کنید:

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

sudo mysql

سپس، دستور ALTER USER زیر را اجرا کنید تا روش احراز هویت کاربر اصلی را تغییر دهید. دستور زیر روش احراز هویت را به mysql_native_password تغییر می‌دهد:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

بعد از این تغییر، از MySQL خارج شوید:

exit

در آخر می‌توانید اسکریپت mysql_secure_installation را بدون مشکل اجرا کنید.

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

sudo mysql_secure_installation

نکته: پس از اجرای اسکریپت، با نمایش VALIDATE PASSWORD PLUGIN از شما می‌پرسد که آیا می‌خواهید تأیید اعتبار پلاگین رمزعبور را انجام دهید. با فعال کردن این ویژگی، پسووردهایی که با معیارهای تعیین شده مطابقت نداشته باشند، توسط MySQL رد می‌شوند. غیرفعال کردن این ویژگی اعتبارسنجی مشکلی ایجاد نمی‌کند، اما بهتر است همیشه از رمزهای عبور قوی و متمایز استفاده کنید.

برای فعال کردن این ویژگی، بعد از نمایش پیام زیر کلید، Y را بزنید و اگر نمی‌خواهید آن را فعال کنید؛ می‌توانید هر دکمه دیگری را انتخاب کنید.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?

Press y|Y for Yes, any other key for No:

در صورت فعال کرد، باید سطح اعتبارسنجی پسورد را انتخاب کنید.

سطح ۲ بالاترین سطح امنیتی است و برای تعیین رمزهای عبور در این سطح، باید از اعداد، حروف کوچک و بزرگ و کاراکترهای خاص استفاده کنید که در غیر این صورت با خطاهایی مانند زیر مواجه می‌شوید:

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary              file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1

صرف‌نظر از تنظیم VALIDATE PASSWORD PLUGIN، باید برای کاربر root در MySQL یک رمز عبور قوی تعیین کنید. این کاربر اختیارات کامل روی دیتابیس دارد و با root سیستم تفاوت دارد. اگر رمز عبور فعلی خود را می‌خواهید، دکمه Y را فشار دهید:

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y

برای پاسخ به سایر سوالات نیز Y را فشار داده و ENTER را بزنید. این کار کاربران ناشناس و دیتابیس آزمایشی را حذف کرده، ورود root از راه دور را غیر فعال کرده و قوانین جدید را در MySQL اعمال می‌کند. در آخر، برای تست ورود به کنسول MySOL دستور زیر را اجرا کنید:

sudo mysql

اگر از sudo استفاده کنید، به‌عنوان کاربر root دیتابیس با دسترسی مدیریتی به سرور MySQL متصل می‌شوید. خروجی مانند زیر می‌باشد:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.28-0ubuntu4 (Ubuntu)

Copyright (c) 2000, 2022, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

برای خروج از کنسول MySQL دستور زیر را بزنید:

exit

در لیارا فقط با یک کلیک و در چند ثانیه، دیتابیس MySQL تهیه کنید.
✅ شبکه خصوصی ✅ منابع اختصاصی ✅ مدیریت آسان
خرید هاست ابری MySQL

مرحله سوم: آموزش نصب LAMP؛ نصب PHP

تا این مرحله، Apache برای ارائه محتوا و MySQL را برای ذخیره و مدیریت داده‌ها نصب کردیم. اکنون باید PHP را نصب کنیم تا پردازش کدهای PHP و نمایش محتوای پویا ممکن شود.

علاوه بر پکیج php به php-mysql نیز نیاز دارید تا PHP بتواند با پایگاه داده MySQL ارتباط برقرار کند. همچنین پکیج libapache2-mod-php به آپاچی امکان پردازش فایل‌های PHP را می‌دهد. پکیج‌های اصلی PHP به‌صورت خودکار نصب می‌شوند. برای نصب پکیج‌ها دستور زیر را وارد کنید:

sudo apt install php libapache2-mod-php php-mysql

بعد از اتمام نصب، از دستور زیر برای تائید نسخه PHP استفاده کنید:

php -v
Output
PHP 8.1.2 (cli) (built: Mar  4 2022 18:13:46) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies

مرحله چهارم: آموزش نصب LAMP؛ ایجاد یک هاست مجازی برای وب سایت

در این مرحله، آموزش نصب LAMP تکمیل شده و می‌توانید از این استک استفاده کنید، اما قبل از تست تنظیمات با یک اسکریپت PHP، بهتر است یک هاست مجازی Apache مناسب برای نگهداری فایل‌ها و پوشه‌های وب سایت راه‌اندازی کنید.

زمانی که از وب‌سرور Apache استفاده می‌کنید، می‌توانید هاست‌های مجازی ایجاد کرده و چندین دامنه را در یک سرور میزبانی کنید. در این آموزش، نحوه راه‌اندازی یک دامنه عمومی به‌نام your_domain توضیح داده می‌شود. به‌طور پیش‌فرض، Apache در اوبونتو ۲۲.۰۴ برای ارائه اسناد از دایرکتوری /var/www/html پیکربندی شده است.

اگر‌چه این هاست برای یک وب‌سایت بخوبی کار می‌کند اما میزبانی چندین وب‌سایت ممکن است مشکل‌ساز شود. برای حل این مشکل، به‌جای تغییر دادن دایرکتوری /var/www/html، یک ساختار دایرکتوری در /var/www برای سایت با دامنه your_domain ایجاد می‌کنیم و در صورت عدم تطابق درخواست کلاینت با هر سایت دیگر، /var/www/html را به‌عنوان دایرکتوری پیش‌فرض قرار می‌دهیم.

برای ایجاد دایرکتوری برای your_domain، دستور زیر را اجرا کنید:

sudo mkdir /var/www/your_domain

سپس، مالکیت دایرکتوری را به متغیر محیطی $USER اختصاص می‌دهیم. این کاربر به کاربر فعلی سیستم اشاره دارد:

sudo chown -R $USER:$USER /var/www/your_domain

در این مرحله، با ویرایشگر دلخواه، یک فایل پیکربندی جدید را در دایرکتوری sites-available آپاچی باز می‌کنیم:

sudo nano /etc/apache2/sites-available/your_domain.conf

حالا یک فایل خالی جدید ایجاد شده و باید با نام دامنه خود، پیکربندی زیر را اضافه کنید:

<VirtualHost *:80>
    ServerName your_domain
    ServerAlias www.your_domain
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

در نهایت فایل را ذخیره کرده و آن را ببنیدید. ذخیره و بستن فایل را با فشردن کلیدهای CTRL+X سپس Y و در آخر با ENTER انجام دهید.

با این پیکربندی که برای هاست مجازی انجام داده‌ایم، به Apache می‌گوییم که به دامنه وب سایت (در اینجا your_domain) با استفاده از /var/www/your_domain به‌عنوان دایرکتوری روت وب، سرویس دهد. در صورتی که بخواهید آپاچی را بدون نام دامنه تست کنید، می‌توانید گزینه‌های ServerName و ServerAlias را با اضافه کردن یک علامت (#) در ابتدای خطوط هر گزینه از حالت دستور خارج کرده و به کامنت تبدیل کنید.

حالا برای فعال کردن هاست مجازی جدید، از a2ensite استفاده می‌کنیم:

sudo a2ensite your_domain

ممکن است بخواهید وب‌سایت پیش‌فرض نصب شده با آپاچی را غیرفعال کنید. زمانی که از یک نام دامین دلخواه استفاده نمی‌کنید، باید این کار را انجام دهید؛ چون در این حالت، پیکربندی پیش‌فرض آپاچی، هاست مجازی شما را نادیده می‌گیرد. از دستور زیر می‌توانید برای غیرفعال کردن وب‌سایت پیش‌فرض آپاچی استفاده کنید:

sudo a2dissite 000-default

برای اینکه مطمئن شوید، فایل پیکربندی شما دارای خطاهای syntax نیست، از دستور زیر استفاده کنید:

sudo apache2ctl configtest

در نهایت با اجرای مجدد Apache، تغییرات اعمال می‌شوند:

sudo systemctl reload apache2

تا این مرحله از آموزش نصب LAMP حالا وب سایت جدید شما فعال شده است. البته روت وب /var/www/your_domain هنوز خالی است. برای تست عملکرد هاست مجازی، یک فایل index.html در اینجا ایجاد می‌کنیم:

nano /var/www/your_domain/index.html

در فایل جدید، موارد زیر را جایگذاری کنید:

<html>
  <head>
    <title>your_domain website</title>
  </head>
  <body>
    <h1>Hello World!</h1>

    <p>This is the landing page of <strong>your_domain</strong>.</p>
  </body>
</html>

با ذخیره و بستن فایل موردنظر، حالا می‌توانید به مرورگر خود رفته و به نام دامنه یا آدرس IP سرور خود دسترسی داشته باشید:

http://server_domain_or_IP

در صفحه وب خود باید محتویات فایلی که ویرایش کردید را ببینید.

آموزش نصب LAMP

مرحله پنجم: آموزش نصب LAMP؛ تست پردازش PHP روی وب سرور

تا اینجا یک هاست مجازی ایجاد کرده‌اید و یک مکان سفارشی برای میزبانی فایل‌ها و پوشه‌های وب سایت خود دارید. حالا برای اطمینان از قابلیت رسیدگی و پردازش درخواست‌های فایل‌های PHP در آپاچی، یک اسکریپت تست PHP ایجاد می‌کنیم. در ادامه آموزش نصب LAMP نحوه انجام این کار را بررسی می‌کنیم.

ابتدا با استفاده از دستور زیر یک فایل جدید با نام info.php در پوشه root وب سفارشی خود ایجاد می‌کنیم:

nano /var/www/your_domain/info.php

بعد از باز شدن یک فایل خالی، متن زیر را داخل فایل اضافه کنید. این متن، یک کد PHP معتبر است:

<?php
phpinfo();

بعد از آنکه کارتان تمام شد، فایل را ذخیره کرده و ببندید. برای تست این اسکریپت می‌توانید در مرورگر به‌نام دامنه یا آدرس IP سرور دسترسی پیدا کرده و نام اسکریپت را در ادامه آن اضافه کنید:

http://server_domain_or_IP/info.php

در تصویر زیر نمونه‌ای از صفحه وب پیش‌فرض PHP را می‌بینید:

آموزش نصب LAMP

در این صفحه می‌توانید اطلاعاتی را درباره سرور از دید PHP بررسی کنید که بری رفع اشکال و اطمینان از درستی تنظیمات مفید است. اگر با وارد کردن آدرس مربوطه این صفحه را در مرورگر مشاهده می‌کنید، PHP به درستی نصب شده است. از آنجا که این فایل اطلاعات حساسی درباره محیط PHP و سرور اوبونتو دارد، بعد از بررسی، آن‌را حذف کنید. برای حذف از دستور زیر استفاده کنید:

sudo rm /var/www/your_domain/info.php

هر زمان که به این اطلاعات نیاز داشتید، می‌توانید این صفحه را مجدداً ایجاد کنید.

هاست ابری PHP لیارا، بدون نیاز به پیکربندی و انجام تنظیمات، به‌راحتی وب‌سایت خود را راه‌اندازی کنید.
✅ دامنه‌ رایگان ✅ ترافیک نامحدود ✅ هزینه ساعتی
خرید هاست ابری PHP

مرحله ششم: آموزش نصب LAMP؛ تست اتصال دیتابیس از PHP (اختیاری)

برای بررسی اتصال PHP به MySQL و اجرای کوئری‌های دیتابیس، می‌توانید یک جدول آزمایشی ایجاد کنید. در این آموزش، دیتابیس را example_database و کاربر را example_user نام‌گذاری می‌کنیم، اما می‌توانید نام‌های دلخواه خود را جایگزین کنید.

ابتدا با استفاده از حساب root، از طریق دستور زیر به کنسول MySQL متصل شوید:

sudo mysql

دیتابیس جدید را با اجرای دستور زیر از کنسول MySQL خود ایجاد کنید:

CREATE DATABASE example_database;

برای ایجاد یک کاربر جدید و اعطای دسترسی کامل به دیتابیس ساخته‌شده، می‌توانید از دستور زیر استفاده کنید:

CREATE USER 'example_user'@'%' IDENTIFIED BY 'password';

در این مثال، نام کاربر example_user بوده و با متد caching_sha2_password احراز هویت می‌شود. همچنین رمز عبور تعیین شده برای آن، password است که البته باید یک رمز ایمن‌تر برای آن در نظر بگیرید.

حالا اجازه دسترسی کامل روی دیتابیس example_database که قبل از این ایجاد کردیم را می‌دهیم:

GRANT ALL ON example_database.* TO 'example_user'@'%';

با اینکه این دستور دسترسی کامل کاربر example_user را به دیتابیس example_database می‌دهد، اما امکان ایجاد یا تغییر سایر دیتابیس‌ها در سرور را برای آن فراهم نمی‌کند.

حالا با استفاده از دستور زیر می‌توانید از پوسته MySQL خارج شوید:

exit

از طریق ورود مجدد به کنسول MySQL می‌توانید تست کنید که آیا کاربر جدید مجوزهای دسترسی مناسب را دارد یا خیر. این بار از گواهی‌نامه کاربر دلخواه استفاده کنید.

mysql -u example_user -p

قسمت-p در این دستور از شما می خواهد که پسورد تعیین شده برای کاربر example_user را انتخاب کنید. پس از ورود به کنسول MySQL، ازطریق دستور زیر می‌توانید تأیید کنید که به دیتابیس example_database دسترسی دارید:

SHOW DATABASES;

خروجی به‌صورت زیر خواهد بود:

+--------------------+
| Database           |
+--------------------+
| example_database   |
| information_schema |
+--------------------+
2 rows in set (0.000 sec)

حالا با اجرای دستور زیر در کنسول MySQL جدول آزمایشی با نام todo_list ایجاد کنید:

CREATE TABLE example_database.todo_list (
  item_id INT AUTO_INCREMENT,
  content VARCHAR(255),
  PRIMARY KEY(item_id)
);

چند ردیف از مطالب را در جدول تست درج کرده و دستور زیر را چند بار با استفاده از Valueهای مختلف تکرار کنید تا جدول تست پر شود:

INSERT INTO example_database.todo_list (content) VALUES ("My first important item");

برای تأیید موفق ذخیره داده‌ها در جدول، دستور زیر را اجرا کنید:

SELECT * FROM example_database.todo_list;

خروجی:

+---------+--------------------------+
| item_id | content                  |
+---------+--------------------------+
|       1 | My first important item  |
|       2 | My second important item |
|       3 | My third important item  |
|       4 | and this one more thing  |
+---------+--------------------------+
4 rows in set (0.000 sec)

پس از تأیید درج داده‌های معتبر در جدول، با دستور زیر از کنسول MySQL خارج شوید:

exit

حالا که با موفقیت این مرحله از آموزش نصب LAMP را نیز پشت سر گذاشتید، می‌توانید یک اسکریپت PHP ایجاد کنید که به MySQL متصل شده و کوئری را آغاز کند. ازطریق دستور زیر، با استفاده از یک ویرایشگر دلخواه، یک فایل PHP جدید در فهرست اصلی وب سفارشی خود ایجاد کنید:

nano /var/www/your_domain/todo_list.php

اسکریپت PHP زیر به دیتابیس MySQL متصل شده و محتوای جدول todo_list.php جستجو می‌شود تا نتایج در یک لیست نمایش داده شوند. در صورتی که مشکلی در اتصال به دیتابیس وجود داشته باشد، با یک استثنا نمایش داده می‌شود. محتوای زیر را به اسکریپت todo_list.php خود اضافه کنید. البته توجه کنید که کاربر و پسورد را با example_user و password جایگزین کنید:

<?php
$user = "example_user";
$password = "password";
$database = "example_database";
$table = "todo_list";

try {
  $db = new PDO("mysql:host=localhost;dbname=$database", $user, $password);
  echo "<h2>TODO</h2><ol>";
  foreach($db->query("SELECT content FROM $table") as $row) {
    echo "<li>" . $row['content'] . "</li>";
  }
  echo "</ol>";
} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
}

پس از اتمام ویرایش، فایل را ذخیره کرده و ببندید.

اکنون می‌توانید با وارد کردن نام دامنه یا آدرس IP عمومی پیکربندی‌شده برای وب‌سایت خود، و اضافه کردن /todo_list.php به انتهای آن، به این صفحه در مرورگر خود دسترسی داشته باشید:

http://your_domain_or_IP/todo_list.php

این صفحه، محتواهایی را که در جدول آزمایشی خود درج کرده‌اید، نمایش می‌دهد.

آموزش نصب LAMP

در این مرحله، آموزش نصب LAMP را تکمیل کرده و محیط PHP شما آماده اتصال و تعامل با سرور MySQL خواهد بود.

جمع‌بندی

در این راهنما، آموزش نصب LAMP را به طور کامل بررسی کرده و دیدیم که چطور می‌توانیم با استفاده از Apache به عنوان وب سرور و MySQL به عنوان یک سیستم دیتابیس، یک پلتفرم انعطاف‌پذیر برای ارائه وب سایت‌ها و اپلیکیشن‌های PHP ارائه دهیم. علاوه‌براین، دیدیم که چطور می‌توان اتصال دیتابیس از php را تست کرد.

با ثبت‌نام در لیارا، ۱۰۰ هزار تومان اعتبار هدیه بگیرید و از سرور مجازی رایگان با کیفیت بالا و امکانات عالی استفاده کنید!
پشتیبانی ۲۴ ساعته برای کاربران سرور مجازی رایگان!
خرید سرور مجازی رایگان

سوالات متداول

1- چرا صفحه todo_list.php در مرورگر باز نمی‌شود؟
بررسی کنید که سرور به‌درستی اجرا شده باشد و نام دامنه یا آدرس IP عمومی را به‌درستی وارد کرده باشید. همچنین، اطمینان حاصل کنید که فایل todo_list.php در مسیر مناسب قرار دارد.

2- چگونه می‌توانم اطلاعات موجود در todo_list.php را ویرایش کنم؟
می‌توانید مستقیماً فایل todo_list.php را در ویرایشگر کد باز کرده و تغییرات موردنظر را اعمال کنید. همچنین، اگر این صفحه به یک پایگاه داده متصل است، باید داده‌ها را از طریق پایگاه داده به‌روزرسانی کنید.

3- چگونه می‌توانم امنیت صفحه todo_list.php را افزایش دهم؟
برای افزایش امنیت، می‌توانید احراز هویت کاربران را پیاده‌سازی کنید، دسترسی به صفحه را محدود کنید و از ورودی‌های کاربران در برابر حملات SQL Injection و XSS محافظت کنید.

همچنین بخوانید: نحوه مشاهده و تنظیم لاگ‌های لینوکس در سرور مجازی اوبونتو Ubuntu

به اشتراک بگذارید