اطلاعیه

بستن
No announcement yet.

آموزش نصب LEMP در لینوکس CentOS 8

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    آموزش نصب LEMP در لینوکس CentOS 8

    LEMP مخفف Linux, Nginx (Enginx X), MariaDB/MySQL و PHP است که شامل مجموعه ای از ابزارهای رایگان و open-source برای استفاده وب سایت های داینامیک با ترافیک بالا میباشد. Nginx (انجین ایکس) یک وب سرور رایگان، قدرتمند و با کارایی بالا میباشد که میتواند همچنین به عنوان یک reverse-proxy هم مورد استفاده قرار گیرد. MariaDB یک دیتابیس برای ذخیره سازی اطلاعات کاربر استفاده میشود و PHP یک زبان برنامه نویسی سمت سرور میباشد که برای توسعه و پشتیبانی صفحات وب داینامیک استفاده میشود.



    همچنین توصیه میشود مطالعه کنید :

    نحوه نصب LAMP در CentOS 8



    ما در این مقاله، به شما نحوه نصب LEMP Server را در توزیع لینوکسی CentOS 8 آموزش خواهیم داد.



    مرحله 1 : به روز رسانی پکیج های نرم افزاری در CentOS 8

    برای شروع، ریپازیتوری و پکیج های نرم افزاری در CentOS 8 را با استفاده از دستور dnf آپدیت کنید.
    کد PHP:
    sudo dnf update 
    آپدیت centos 8






    مرحله 2 : نصب وب سرور Nginx در CentOS 8

    پس از کامل شدن آپدیت پکیج های نرم افزاری، با استفاده از دستور زیر انجین ایکس را نصب کنید.
    کد PHP:
    sudo dnf install nginx 
    نصب nginx در centos 8





    عکس زیر نشان میدهد که نصب Nginx بدون هیچ مشکلی انجام شده است.
    نصب انجین ایکس در centos 8





    زمانیکه نصب کامل شد، دستورات زیر را برای بالا آمدن اتوماتیک انجین ایکس هنگام Boot سیستم و همچنین تایید کارکرد آن اجرا کنید.
    کد PHP:
    sudo systemctl enable nginx
    sudo systemctl start nginx
    sudo systemctl status nginx 
    چک کردن وضعیت nginx در centos 8





    برای چک کردن ورژن Nginx نصب شده، دستور زیر را اجرا کنید.
    کد PHP:
    nginx -
    چک کردن ورژن nginx در centos 8





    اگر شما کنجکاو هستند که اطلاعات بیشتری درباره Nginx به دست بیاورید، دستور rpm را همانند زیر اجرا کنید.
    کد PHP:
    rpm -qi nginx 
    بررسی اطلاعات انجین ایکس در centos 8




    اکنون سرویس Apache را به فایروال سیستم عامل تان به جهت دسترسی دادن اضافه کنید. برای این کار از دستور زیر استفاده کنید، سپس سرویس firewalld را reload کنید.
    کد PHP:
    # firewall-cmd --permanent --zone=public --add-service=http
    success

    # firewall-cmd --reload
    success 

    برای مطمئن شدن از اینکه سرور Nginx در حال سرویس دهی میباشد، آدرس ip سرورتان را در یک مرورگر وارد کنید و ENTER را فشار دهید.
    کد PHP:
    http://server-IP 
    در صورتی که شما صفحه خوش آمدگویی انجین ایکس (Welcome to Nginx) را مشاهده میکنید، یعنی سرور شما بالاست و میتوانید بقیه تنظیمات را انجام دهید.
    صفحه پیش فرض وب سرور nginx






    مرحله 3 : نصب MariaDB در CentOS 8

    MariaDB رایگان و open-source میباشد که شاخه ای از MySQL است و دارای آخرین قابلیت هایست که باعث میشود جایگزین بهتری برای MySQL باشد. برای نصب MariaDB دستور زیر را اجرا کنید.
    کد PHP:
    sudo dnf install mariadb-server mariadb 
    نصب mariadb در centos 8





    برای فعال کردن سرویس MariaDB در Boot سیستم، دستور زیر را اجرا کنید.
    کد PHP:
    sudo systemctl enable mariadb 
    برای start کردن سرور MariaDB دستور زیر را اجرا کنید.
    کد PHP:
    sudo systemctl start mariadb 
    سپس با استفاده از دستور زیر از وضعیت سرویس MariaDB را بررسی کنید که باید در حالت active (running) باشد.
    کد PHP:
    sudo systemctl status mariadb 
    بررسی وضعیت دیتابیس mariadb در centos 8





    موتور دیتابیس MariaDB امن نیست و هر کسی بدون احراز هویت میتواند به آن login کند. برای secure کردن MariaDB به منظور کاهش شانس دسترسی های بدون احراز هویت دستور زیر را اجرا کنید.
    کد PHP:
    sudo mysql_secure_installation 
    بعد از اجرای دستور یک سری سوالات پرسیده میشود. اولین سوال از شما میخواهد که یک پسورد root تعریف کنید. Enter را فشار دهید و به منظور انتخاب yes برای مشخص کردن پسورد root کلید Y را انتخاب کنید. بعد از تعریف پسورد root، سوالات باقیمانده را به منظور حذف کاربر ناشناس، حذف دیتابیس تست و غیرفعال کردن دسترسی ریموت root پاسخ دهید.
    امن کردن دیتابیس mysql در centos 8





    به محض اینکه تمامی مراحل بالا را تکمیل کردید شما میتوانید به سرور MariaDB لاگین کنید و اطلاعات ورژن سرور MariaDB را بررسی کنید. (برای login به MariaDB پسوردی را که در مرحله امن سازی دیتابیس ایجاد کردید را وارد کنید)
    کد PHP:
    mysql -u root -
    چک کردن ورژن مای اسکیول در centos 8






    مرحله 4 : نصب PHP 7 روی CentOS 8

    در نهایت، آخرین جزء سرور LEMP را که PHP است را نصب میکنیم که در حقیقت یک زبان برنامه نویسی وب میباشد که به صورت بسیار رایجی برای برنامه نویسی صفحات داینامیک وب مورد استفاده قرار میگیرد.

    در حال حاضر آخرین ورژن آن PHP 7.4 است که قصد داریم آنرا با استفاده از ریپازیتوری Remi نصب کنیم. ریپازیتوری remi یک ریپازیتوری رایگان است که آخرین ورژن های نرم افزاری پیشرفته که به صورت پیش فرض روی CentOS نصب نیستند را در خود دارد.

    ابتدا دستور زیر را برای نصب ریپازیتوری EPEL اجرا کنید.
    کد PHP:
    sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm 
    سپس ادامه دهید و yum-utils را نصب کنید و ریپازیتوری remi را با استفاده از دستور زیر فعال کنید.
    کد PHP:
    sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm 
    سپس، ماژول های در دسترس PHP را که برای نصب موجود هستند را سرچ کنید.
    کد PHP:
    sudo dnf module list php 
    همانطور که در زیر مشاهده میکنید، خروجی دستور، module ها، stream و profile های نصب PHP را نمایش میدهد. از خروجی زیر ما میتوانیم، ورژن PHP موجود را که با یک حرف d داخل براکت نزدیک به ورژن PHP نوشته شده (PHP 7.2) تشخیص دهیم.
    لیست کردن ماژول های php در centos 8





    از خروجی همچنین میتوانیم مشاهده کنیم که آخرین ماژول PHP در حقیقت PHP 7.4 است که قصد داریم آنرا نصب کنیم اما ابتدا نیاز داریم که ماژول های PHP را reset کنیم. در نتیجه دستور زیر را اجرا میکنیم.
    کد PHP:
    sudo dnf module reset php 



    سپس، با اجرای دستور زیر ماژول PHP 7.4 را فعال میکنیم.
    کد PHP:
    sudo dnf module enable php:remi-7.4 
    فعال کردن ماژول php در centos 8






    با فعال کردن ماژول PHP 7.4 در نهایت، پکیج های PHP و PHP-FPM (FastCGI Process Manager) و ماژول های مربوطه PHP را با استفاده از دستور زیر نصب میکنیم.
    کد PHP:
    sudo dnf install php php-opcache php-gd php-curl php-mysqlnd 
    اکنون، ورژن نصب شده را بررسی کنید.
    کد PHP:
    php -
    چک کردن ورژن php در centos 8





    سپس php-fpm را استارت کنید و آنرا برای در حال اجرا بودن به هنگام Boot سیستم فعال کنید.
    کد PHP:
    sudo systemctl enable php-fpm
    sudo systemctl start php-fpm 
    به منظور بررسی وضعیت آن دستور زیر را اجرا کنید.
    کد PHP:
    sudo systemctl status php-fpm 



    مورد دیگر این است که PHP-FPM به صورت پیش فرض طوری کانفیگ شده که تحت یوزر Apache اجرا شود. اما از آنجایی که ما آنرا تحت وب سرور Nginx اجرا میکنیم، نیاز داریم که آنرا به یوزر Nginx تغییر دهیم.

    در نتیجه فایل /etc/php-fpm.d/www.conf را باز کنید.
    کد PHP:
    vi /etc/php-fpm.d/www.conf 
    سپس دو خط زیر را در آن پیدا کنید.
    کد PHP:
    user apache
    group 
    apache 
    اکنون مقدار آنها را به Nginx تغییر دهید.
    کد PHP:
    user nginx
    group 
    nginx 
    تغییر یوزر php-fpm در centos 8





    فایل کانفیگ را ذخیره و ببندید.

    سپس سرویس های Nginx و PHP-FPM را به منظور اعمال تغییرات restart کنید.
    کد PHP:
    sudo systemctl restart nginx
    sudo systemctl restart php-fpm 


    مرحله 5 : تست اطلاعات PHP

    به صورت پیش فرض، پوشه root انجین ایکس در مسیر /usr/share/nginx/html/ قرار دارد. برای تست PHP-FPM میتوانیم یک فایل PHP به نام info.php ایجاد کنیم و خطوط زیر را در آن paste کنیم.
    کد PHP:
    <?php
    phpinfo
    ();
    ?>
    فایل را ذخیره و از آن خارج شوید.

    مرورگر خود را باز کنید و در نوار آدرس ip وب سرور خود را همانند زیر وارد کنید.
    کد PHP:
    http://server-ip-address/info.php 
    چک کردن اطلاعات php در centos 8





    اگر همه چیز را به درستی انجام داده باشید، باید اطلاعات ورژن PHP در حال اجرا و سایر پارامترها را مشاهده کنید.

    اکنون شما با موفقیت LEMP Server را با موفقیت روی CentOS 8 نصب کردید. توصیه میشود به منظور دلایل امنیتی و جلوگیری از اینکه هکر ها به اطلاعات سرور Nginx شما دسترسی پیدا کنند، فایل info.php را حذف کنید.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 03-14-2020, 05:39 AM.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی

ایمیل مدیریت

Habili@linux-zone.org

در حال انجام ...
X