پشته نرم افزار LEMP گروهی از نرم افزارها است که می تواند برای ارائه صفحات وب پویا و برنامه های وب استفاده شود. نام “LEMP” مخفف 4 کلمه است: سیستم عامل Linux که یک سرور مجازی وب (E)Nginxدارد. داده های پس زمینه در یک پایگاه داده MariaDB ذخیره می شوند و پردازش پویا توسط PHP انجام می شود.
اگرچه این پشته نرم افزار به طور معمول شامل MySQL به عنوان سیستم مدیریت پایگاه داده است ، اما برخی توزیع های لینوکس – از جمله Debian – از MariaDB به عنوان جایگزینی برای MySQL استفاده می کنند.
در این راهنما ، یک پشته LEMP را روی یک سرور مجازی Debian 10 با استفاده از MariaDB به عنوان سیستم مدیریت پایگاه داده نصب خواهید کرد.
پیش نیازها
برای تکمیل این راهنما ، به دسترسی به یک سرور مجازی Debian 10 احتیاج دارید. این سرور مجازی باید دارای یک کاربر معمولی باشد که با امتیازات sudo پیکربندی شده و یک فایروال فعال با ufw داشته باشد. برای تنظیم این گزینه ، می توانید ستاپ اولیه سرور مجازی را با راهنمای Debian 10 دنبال کنید.
مرحله 1 – نصب سرور مجازی Nginx
به منظور ارائه پیج های وب سایت به بازدید کنندگان سایت خود ، قصد داریم از Nginx ، یک سرور مجازی وب محبوب استفاده کنیم که به دلیل عملکرد و پایداری کلی آن بسیار مشهور است.
تمام نرم افزاری که برای این روش از آن استفاده خواهید کرد ، مستقیماً از منابع بسته پیش فرض Debian وارد می شوند. این بدان معناست که می توانید از مجموعه مدیریت بسته apt برای تکمیل نصب استفاده کنید.
از آنجا که این اولین باری است که از apt استفاده می کنید ، باید با به روز کردن فهرست بسته محلی خود شروع کنید. سپس می توانید سرور مجازی را نصب کنید:
⦁ $ sudo apt update

⦁ $ sudo apt install nginx
در Debian 10 ، Nginx پیکربندی شده است تا نصب را شروع کند.
اگر فایروال ufw در حال اجراست ، باید به Nginx اجازه اتصالات دهید. باید محدودترین نمایه ای را فعال کنید که هنوز امکان ترافیک مورد نظر شما را فراهم می کند. از آنجایی که شما هنوز SSL را برای سرور مجازی خود پیکربندی نکرده اید ، اکنون باید اجازه ترافیک HTTP در درگاه 80 را بدهید.
می توانید این را با تایپ کردن دستور زیر فعال کنید:
⦁ sudo ufw allow ‘Nginx HTTP’

می توانید تغییر را با تایپ دستور زیر تایید کنید:
⦁ sudo ufw status

باید ترافیک HTTP مجاز در خروجی نمایش داده شده را مشاهده کنید:
Output
Status: active

To Action From
— —— —-
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)

اکنون با دسترسی به نام دامنه سرور مجازی یا آدرس IP عمومی در مرورگر وب خود ، بررسی کنید که سرور مجازی در حال فعال بودن یا کار کردن است. اگر نام دامنه ای که به سرور مجازی شما اشاره کند ندارید و آدرس IP عمومی سرور مجازی خود را نمی دانید ، می توانید با وارد کردن یکی از موارد زیر در ترمینال خود آن را پیدا کنید:
⦁ ip addr show eth0 | grep inet | awk ‘{ print $2; }’ | sed ‘s/\/.*$//’

با این کار چند آدرس IP چاپ می شود. می توانید هر یک از آنها را به ترتیب در مرورگر وب خود امتحان کنید.
یکی از آدرسهای دریافت شده را در مرورگر وب خود تایپ کنید. باید شما را به صفحه فرود پیش فرض Nginx ببرد:
http://your_domain_or_IP

اگر صفحه فوق را می بینید ،Nginx را با موفقیت نصب کرده اید.
مرحله 2 – نصب MariaDB
اکنون که وب سرور مجازی خود را فعال و راه اندازی کرده اید ، باید سیستم پایگاه داده را نصب کنید تا بتوانید داده های سایت خود را ذخیره و مدیریت کنید.
در Debian 10 ، سرور مجازی ابربسته mysql ، که به طور سنتی برای نصب سرور مجازی MySQL استفاده می شد ، توسط سرور مجازی پیش فرض-mysql جایگزین شد. این metapackage مرجع MariaDB ، فورک انجمن سرور مجازی اصلی MySQL توسط Oracle است ، و در حال حاضر سرور مجازی پایگاه داده سازگار با MySQL است که در منابع مدیر بسته بسته های دبیان موجود است.
با این وجود ، برای سازگاری طولانی تر توصیه می شود که به جای استفاده از ابربسته ، MariaDB را با استفاده از بسته واقعی برنامه ، mariadb-server ، نصب کنید.
برای نصب این نرم افزار ، دستور زیر را اجرا کنید:
⦁ $ sudo apt install mariadb-server

پس از اتمام نصب ، توصیه می شود اسکریپت امنیتی را اجرا کنید که همراه با MariaDB از قبل نصب شده باشد. این اسکریپت برخی از تنظیمات پیش فرض ناامن را حذف کرده و دسترسی به سیستم پایگاه داده شما را خاموش می کند. اسکریپت تعاملی را با اجرای این دستور شروع کنید:
⦁ $ sudo mysql_secure_installation

این اسکریپت شما را با مجموعه ای از درخواست ها روبه رو میکند که می توانید در تنظیمات MariaDB خود تغییراتی ایجاد کنید. اولین اعلان از شما می خواهد رمز ورود ریشه داده فعلی را وارد کنید. این نباید با ریشه سیستم اشتباه گرفته شود. کاربر root بانک اطلاعاتی یک کاربر ادمین با امتیازات کامل نسبت به سیستم دیتابیس است. از آنجا که شما به تازگی MariaDB را نصب کرده اید و هنوز تغییری در پیکربندی ایجاد نکرده اید ، این گذرواژه خالی خواهد بود ، بنابراین کافی است سریعاً ENTER را فشار دهید.
اعلان بعدی از شما سؤال می کند که آیا می خواهید رمزعبور ریشه دیتابیس را تنظیم کنید یا خیر. از آنجا که MariaDB از یک روش تأیید هویت ویژه برای کاربر اصلی استفاده می کند که به طور معمول از استفاده از رمز عبور ایمن تر است ، دیگر نیازی به تنظیم آن ندارید. N را تایپ کرده و ENTER را فشار دهید.
از آنجا ، می توانید Y و سپس ENTER را فشار دهید تا پیش فرض برای همه سؤالات بعدی را بپذیرید. با این کار کاربران ناشناس و پایگاه داده آزمایش حذف می شوند ، ورود به سیستم از راه دور ریشه را غیرفعال می کنند و این قوانین جدید را بارگذاری می کنند تا MariaDB سریعاً به تغییراتی که شما انجام داده اید سازگار شود.
پس از اتمام کار ، با تایپ دستور زیر به کنسول MariaDB وارد شوید:
⦁ $ sudo mariadb

این کار اتصال به سرور مجازی MariaDB به عنوان ریشه کاربر پایگاه داده ادمین را انجام میدهد ، که با استفاده از sudo هنگام اجرای این دستور استنباط می شود. شما باید خروجی مانند این را مشاهده کنید:
Output
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 74
Server version: 10.3.15-MariaDB-1 Debian 10

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

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

MariaDB [(none)]>

توجه کنید که برای اتصال به عنوان کاربر اصلی نیازی به گذرواژه ندارید. در واقع به این دلیل کار می کند که روش احراز هویت پیش فرض برای کاربر ادمین MariaDB به جای پسورد، unix_socket است. اگر چه ممکن است در ابتدا شبیه یک مشکل امنیتی به نظر برسد ، باعث می شود سرور مجازی پایگاه داده ایمن تر شود زیرا تنها کاربرانی اجازه ورود به عنوان کاربر اصلی MariaDB را دارند که کاربران سیستم با امتیازات sudo هستند که از طریق کنسول یا برنامه ای با امتیازات مشابه ، وارد سیستم می شوند. از نظر عملی ، بدان معناست که شما قادر نخواهید بود از کاربر ریشه بانک اطلاعاتی ادمین برای اتصال به برنامه PHP خود استفاده کنید.
برای افزایش امنیت ، بهتر است برای هر بانک اطلاعاتی ، حسابهای کاربری اختصاصی با امتیازات گسترده تری تنظیم کنید ، به خصوص اگر قصد دارید چندین پایگاه داده را در سرور مجازی خود داشته باشید. برای نشان دادن چنین ستاپی ، یک پایگاه داده با نام example_database و کاربری با نام example_user ایجاد می کنیم ، اما می توانید این نام ها را با مقادیر مختلف جایگزین کنید.
برای ایجاد یک پایگاه داده جدید ، دستور زیر را از کنسول MariaDB خود اجرا کنید:
⦁ mariaDB [(none)]> CREATE DATABASE example_database;

اکنون می توانید یک کاربر جدید ایجاد کنید و به آنها در پایگاه داده سفارشی که اخیراً ایجاد کرده اید ، امتیاز اعطا کنید. دستور زیر رمزعبور کاربر را به عنوان password تعریف می کند ، اما شما باید این مقدار را با یک رمز عبور مطمئن با انتخاب خود جایگزین کنید.
⦁ mariaDB [(none)]> GRANT ALL ON example_database.* TO ‘example_user’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

این کار به کاربر example_user دسترسی کامل به بانک اطلاعاتی example_database می دهد ، در حالی که از ایجاد یا تغییر سایر پایگاه های داده روی سرور شما جلوگیری می کند.
برای اطمینان از ذخیره و در دسترس بودن آنها در جلسه کنونی ، امتیازات را فلاش کنید:
⦁ mariaDB [(none)]> FLUSH PRIVILEGES;

پس از این ، از پوسته MariaDB خارج شوید:
⦁ mariaDB [(none)]> exit

با ورود دوباره به کنسول MariaDB ، این بار با استفاده از اعتبار کاربر سفارشی می توانید آزمایش کنید که آیا کاربر جدید دارای مجوزهای مناسب است.
⦁ $ mariadb -u example_user -p

در این دستور ،به پرچم -p توجه کنید ، که باعث می شود رمز عبوری که هنگام ایجاد کاربر example_user ایجاد می کنید ، از شما خواسته شود. پس از ورود به کنسول MariaDB ، تأیید کنید که به بانک اطلاعاتی example_database دسترسی دارید:
⦁ mariaDB [(none)]> SHOW DATABASES;

این کار خروجی زیر را به شما می دهد:
Output
+——————–+
| Database |
+——————–+
| example_database |
| information_schema |
+——————–+
2 rows in set (0.000 sec)
برای خروج از پوسته MariaDB تایپ کنید:
⦁ mariaDB [(none)]> exit

 

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

این بدان معناست که محیط PHP شما آماده اتصال و تعامل با سرور مجازی MariaDB شماست.
نتیجه
در این راهنما ، شما با استفاده از Nginx به عنوان سرور مجازی وب ، یک پایه انعطاف پذیر برای ارائه وب سایت ها و برنامه های PHP به بازدید کنندگان خود ایجاد کرده اید. شما Nginx را تنظیم کرده اید تا بتوانید درخواست های PHP را از طریق php-fpm انجام دهید ، همچنین یک پایگاه داده MariaDB را برای ذخیره اطلاعات وب سایت خود تنظیم کرده اید.
برای بهبود بیشتر ستاپ فعلی ، می توانید Composer را برای وابستگی و مدیریت بسته بندی در PHP نصب کنید ، همچنین می توانید با استفاده از Let Encrypt یک گواهی OpenSSL را برای وب سایت خود نصب کنید.

 

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

استفاده از nsh برای دستورات از راه دور اوبونتو 18 –  میزبانی وب سایت با Caddy اوبونتو 18

تنظیم سرور ذخیره سازی آبجکت با استفاده از Minio در اوبونتو 18  –  ضبط و اشتراک گذاری ترمینال با Terminalizer اوبونتو

تنظیم مسیریابی شرطی و پاسخگو با React Router v4  –  ایجاد یک URL کوتاه کننده با Django و GraphQL

یک برنامه ردیابی سلامت را با React ،GraphQL و Okta –  ساخت برنامه چت زمان حقیقی React و GraphQL

به روزرسانی فیلترهای مرتب سازی Angular (زاویه ای) –  با استفاده از React ، Superagent و API اینستاگرام

نحوه ساختن یک برنامه جهانی با Nuxt.js و Django –  دکمه دانلود با ریزتعاملات با CSS ، anime.js و segment.js

نحوه اضافه کردن عکسهای پیشرفته در Node و Express  –  با Vue ،GraphQL و Apollo Client یک وبلاگ ساخت

یک برنامه SSR با روتر Preact ، Unistore و Preact بسازید  –  ساخت برنامه های وب پیشرونده با Angular

اشکال زدایی JavaScript در تولید با نقشه های منبع  –  می توان با Koa برنامه “سلام جهانی” ساخت

ساختن یک برنامه با Node ، React ، Okta  –   مدیریت حالت فرم در React با Redux Form

نحوه تنظیم Laravel ، Nginx و MySQL  –  ارتقاء از AngularJS به Angular با ngUpgrade

استفاده از ویژوال استودیو از راه دور  –  احراز هویت API با JSON Web Tokens و Passport

راه اندازی یک پروژه React با Parcel  –  ایجاد Swiper مانند Netflix را در Vue

ساختن یک ربات تلگرام با Laravel و BotMan  –  استفاده از map، filter، و reduce در جاوااسکریپت

چگونه می توان موتور جستجوی زمان واقعی را با Vue  –  ساختن سیستم مستندات (Documentation) با Vue و VuePress

استفاده از اشتراک زنده با کد ویژوال استودیو  –  ساخت یک مقیاس اندازه گیری قدرت رمز عبور را در React

شروع عملی GraphQL با Node.js و Express  –  ساخت یک برنامه آب و هوا در Django

نحوه نصب Discourse روی Ubuntu 18  –  تأیید رمز عبور با استفاده از درخواست فرم Laravel

نحوه نصب MySQL در CentOS 8  –  استفاده از پسوند PDO PHP برای انجام تراکنش MySQL

نصب و پیکربندی SNMP Daemon و Client در Ubuntu 18  –  نصب Linux، Nginx، MariaDB،PHP در Debian 10

 

 

کلمات کلیدی خرید سرور

خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان –