اطلاعیه

بستن
No announcement yet.

نصب "LAMP "Linux, Apache, MariaDB, PHP/PhpMyAdmin در RedHat/CentOS 7.0

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

  • نصب "LAMP "Linux, Apache, MariaDB, PHP/PhpMyAdmin در RedHat/CentOS 7.0

    در این آموزش قصد داریم بر روی نحوه نصب و راه اندازی LAMP Stack "Linux, Apache, MariaDB, PHP, PhpMyAdmin" در Red Hat Enterprise 7.0 و CentOS 7.0 تمرکز کنیم، همچنین قابل ذکر هست که سرویس httpd در هر دوی توزیع ها به Apache HTTP 2.4 ارتقاء داده شده است.


    پیش نیازها

    بسته به توزیع مورد استفاده تان، RedHat یا CentOS 7.0 از لینک های زیر برای راه اندازی و اجرای یک سیستم minimal از یک IP آدرس Static برای تنظیمات شبکه استفاده کنید.


    برای RHEL 7.0

    آموزش تصویری نصب RHEL (Red Hat Enterprise Linux) 7.0


    برای CentOS 7.0

    آموزش تصویری نصب CentOS 7.0


    همچنین توصیه میشود مقالات زیر را هم مطالعه بفرمایید.

    آموزش نصب "LAMP "Linux, Apache, MySQL or MariaDB, PHP در دبیان 9

    آموزش نصب "LAMP "Linux, Apache, MySQL or MariaDB, PHP در Ubuntu 16.10



    مرحله اول : نصب Apache به همراه تنظیمات اولیه

    1 - بعد از نصب و راه اندازی سیستم و انجام تنظیمات اینترفیس شبکه تان توسط یک IP آدرس ثابت در RedHat/CentOS 7.0 جلوتر میرویم و پکیچ باینری سرویس httpd برای Apache 2.4 را که توسط ریپازیتوری های رسمی ارائه شده همانند زیر نصب کنید.
    کد PHP:
    # yum install httpd 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	install apache in centos 7.png
نمایش ها:	1
اندازه:	44.1 KB
شناسه:	22072


    2 - بعد از اتمام نصب توسط yum از دستورات زیر برای مدیریت سرویس آپاچی استفاده کنید، از آنجایی که RedHat و CentOS 7.0 هر دو اسکریپت های init شان از SysV به systemd ارتقاء داده اند، شما میتوانید از اسکریپت های sysv و apache همزمان برای مدیریت سرویس استفاده کنید.
    کد PHP:
    # systemctl status|start|stop|restart|reload httpd
    OR 
    # service httpd status|start|stop|restart|reload
    OR 
    # apachectl configtest| graceful 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	start apache in centos 7.png
نمایش ها:	1
اندازه:	24.9 KB
شناسه:	22073


    3 - در مرحله بعد سرویس آپاچی را با استفاده از اسکریپت init systemd استارت کرده و رول های فایروال را در RedHat/CentOS 7.0 با استفاده از firewall-cmd باز کنید، که به صورت پیش فرض برای مدیریت iptables از طریق سرویس firewalld میباشد.
    کد PHP:
    # firewall-cmd --add-service=http 
    نکته : توجه داشته باشید بعد از reboot کردن سیستم یا restart کردن سرویس firewalld این rule که استفاده کرده اید به دلیل اینکه هنوز باز هستند، از بین خواهد رفت و به طور دائمی اعمال نخواهد شد. برای اعمال کردن دائمی رول ها یا قوانین iptables در فایروال از آپشن permanent و بعد از آن ریستارت کردن سرویس firewalld استفاده کنید.
    کد PHP:
    # firewall-cmd --permanent --add-service=http
    # systemctl restart firewalld 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	enable firewall in centos 7.png
نمایش ها:	1
اندازه:	14.0 KB
شناسه:	22074


    آپشن های مهم دیگر Firewalld در زیر ارائه شده است.
    کد PHP:
    # firewall-cmd --state
    # firewall-cmd --list-all
    # firewall-cmd --list-interfaces
    # firewall-cmd --get-service
    # firewall-cmd --query-service service_name
    # firewall-cmd --add-port=8080/tcp 

    4 - برای مطمئن شدن از عملکرد وب سرور آپاچی، یک مرورگر باز کنید و IP آدرس سرورتان را در URL تایپ کنید، (برای مثال http://server-ip) سپس یک صفحه همانند عکس زیر نمایش داده میشود.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	apache default page.png
نمایش ها:	1
اندازه:	124.5 KB
شناسه:	22075


    5 - اکنون، مسیر DocumentRoot آپاچی روی دایرکتوری /var/www/html تنظیم شده است، که به صورت پیش فرض خالی هست و هیچ فایل index در آن ارائه نشده است. اگر شما میخواهید لیست یک دایرکتوری از مسیر DocumentRoot تان را مشاهده کنید، فایل تنظیمات آپاچی "welcom.conf" را باز کنید و در قسمت "<LocationMatch>" کاراکتر منهای '-' کنار عبارت Index را به بعلاوه '+' تغییر دهید، برای مثال همانند شکل زیر عمل کنید.
    کد PHP:
    # nano /etc/httpd/conf.d/welcome.conf 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	apache directory listing.png
نمایش ها:	1
اندازه:	14.6 KB
شناسه:	22076


    6 - بعد از ذخیره تغییرات فایل را ببندید و سرویس Apache را برای انعکاس تغییرات جدید restart کرده، سپس صفحه مرورگر خود را برای مشاهده تغییرات reload کنید.
    کد PHP:
    # systemctl restart httpd 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	apache index file.png
نمایش ها:	1
اندازه:	6.0 KB
شناسه:	22077



    مرحله دوم : نصب PHP5 برای Apache

    7 - قبل از نصب زبان برنامه نویسی PHP5 برای Apache، با استفاده از دستور زیر، لیستی از تمامی ماژول های PHP را به دست آورید.
    کد PHP:
    # yum search php 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	install php in centos 7.png
نمایش ها:	1
اندازه:	25.5 KB
شناسه:	22078


    8 - بسته به نوع برنامه های که میخواهید استفاده کنید، ماژول های مورد نیاز PHP را از لیست بالا را نصب کرده، اما برای پشتیبانی MariaDB در PHP و PhpMyAdmin احتیاج هست که شما ماژول های زیر را نصب کنید.
    کد PHP:
    # yum install php php-mysql php-pdo php-gd php-mbstring 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	install php modules in centos 7.png
نمایش ها:	1
اندازه:	19.3 KB
شناسه:	22079


    9 - برای گرفتن لیست کامل اطلاعات درباره PHP از طریق مرورگرتان، ابتدا یک فایل info.php در مسیر Document Root آپاچی با استفاده از دستور زیر از طریق یوزر root ایجاد کرده، سپس سرویس httpd را ریستارت کرده و در مرورگرتان آدرس فایل info.php را به صورت مستقیم وارد کنید. (http://server-ip/info.php)
    کد PHP:
    # echo "<?php phpinfo(); ?>" > /var/www/html/info.php
    # systemctl restart httpd
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	check php info in centos 7.png
نمایش ها:	1
اندازه:	53.1 KB
شناسه:	22080


    10 - اگر شما یک خطایی مربوط به Date و Timezone در PHP دریافت کردید، فایل تنظیمات php.ini را باز کرده، خط date.timezone را جستجو و از حالت کامنت خارج کنید، سپس موقعیت زمانی خودتان را اضافه کنید و بعد از ذخیره تغییرات و خارج شدن از فایل سرویس Apache را restart کنید.
    کد PHP:
    # nano /etc/php.ini 
    شما میتوانید برای تعیین و عوض کردن date.timezone خود، از لیست Timezones پشتیبانی شده توسط PHP همانند زیر استفاده کنید.
    کد PHP:
    date.timezone Asia/Tehran 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	set timezone in centos.png
نمایش ها:	1
اندازه:	15.4 KB
شناسه:	22081



    مرحله سوم : نصب و تنظیمات دیتابیس MariaDB

    11 - لینوکس Red Hat Enterprise/CentOS 7.0 برای مدیریت دیتابیس سیستم از MySQL به MariaDB سوئیچ کرده است. برای نصب دیتابیس MariaDB از دستور زیر استفاده کنید.
    کد PHP:
    # yum install mariadb-server mariadb 

    12 - بعد از نصب پکیج MariaDB، سرویس دیتابیس را start کنید و برای امن کردن دیتابیس از اسکریپت mysql_secure_installation (تنظیم پسورد root، غیرفعال کردن لاگین root از به صورت remote، حذف کردن دیتابیس test و حذف کردن یوزرهای ناشناس) استفاده کنید.
    کد PHP:
    # systemctl start mariadb
    # mysql_secure_installation 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	start mariadb in centos 7.png
نمایش ها:	1
اندازه:	18.4 KB
شناسه:	22082

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	secure mysql installation.png
نمایش ها:	1
اندازه:	21.0 KB
شناسه:	22083


    13 - برای تست عملکرد دیتابیس توسط یوزر root به MariaDB لاگین کنید و با استفاده از دستور quit خارج شوید. (همانند توضیحات زیر)
    کد PHP:
    mysql -u root -p
    MariaDB 
    SHOW VARIABLES;
    MariaDB quit 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	connect to mysql installation.png
نمایش ها:	1
اندازه:	16.7 KB
شناسه:	22084



    مرحله چهارم : نصب PhpMyAdmin

    14 - به صورت پیش فرض ریپازیتوری های رسمی RedHat 7.0 یا CentOS 7.0 هیچ پکیجی برای اینترفیس وب PhpMyAdmin ارائه نداده است. اگر شما برای مدیریت دیتابیس تان در کامند لاین MySQL راحت نیستید، میتوانید پکیج PhpMyAdmin را با استفاده از فعال کردن ریپازیتوری های epel یا remi در CentOS 7.0 نصب کنید. برای این کار از دستورات زیر استفاده کنید.
    کد PHP:
    # rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm

    # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm 
    بعد از فعال کردن ریپازیتوری ها شما میتوانید PhpMyAdmin را نصب کنید.
    کد PHP:
    # yum install phpmyadmin 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	install phpmyadmin in centos 7.png
نمایش ها:	1
اندازه:	27.4 KB
شناسه:	22085


    15 - سپس فایل phpmyadmin.conf را برای دسترسی دادن به هاست های راه دور ویرایش میکنیم، conf.d در دایرکتوری آپاچی قرار دارد.
    کد PHP:
    # nano /etc/httpd/conf.d/phpmyadmin.conf 
    مطمئن شوید که عبارت Require all granted (برای Apache 2.4) و Allow from & ltip address> درون قسمت مربوط به دایرکتوری /usr/share/phpmyadmin اضافه شده باشد.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	phpmyadmin allow access.png
نمایش ها:	1
اندازه:	25.4 KB
شناسه:	22086


    در نهایت برای اعمال تغییرات سرویس آپاچی را restart میکنیم.
    کد PHP:
    -------------- On RHEL/CentOS 7 and Fedora 22-24 --------------
    # systemctl restart httpd


    -------------- On RHEL/CentOS 6 and Fedora 20-21 --------------
    # service httpd restart 

    16 - برای اینکه بتوانید با استفاده از متد cookie authentication (احراز هویت کوکی) به اینترفیس وب PhpMyAdmin لاگین کنید، یکblowfish string همانند تصویر زیر و با استفاده از ایجاد یک secret string در فایل کانفیگ phpmyadmin (فایل config.inc.php) اضافه کنید و سپس سرویس وب apache را restart کنید و در مرورگر خود آدرس http://server=ip/phpmyadmin را وارد نمایید.
    کد PHP:
    # nano /etc/httpd/conf.d/phpmyadmin.conf
    # systemctl restart  httpd 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	add blowfish phpmyadmin.png
نمایش ها:	1
اندازه:	19.3 KB
شناسه:	22087

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	login to phpmyadmin.png
نمایش ها:	1
اندازه:	53.4 KB
شناسه:	22088


    همچنین توصیه میشود مقالات زیر را هم مطالعه بفرمایید.

    آموزش نصب PhpMyAdmin در لینوکس (CentOS/RedHat 6 - 7 و Fedora 20 -24)
    آموزش Secure کردن PhpMyAdmin



    مرحله پنجم : فعال کردن LAMP در Boot سیستم

    17 - اگر شما نیاز دارید که سرویس Apache و MariaDB به صورت اتوماتیک بعد از reboot کردن سیستم start شود دستورات زیر را برای فعال کردن آنها در سرتاسر سیستم وارد کنید.
    کد PHP:
    # systemctl enable mariadb
    # systemctl enable httpd 
    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	enable services system wide.png
نمایش ها:	1
اندازه:	5.7 KB
شناسه:	22089

    این همه اون چیزی هست که برای نصب ابتدایی LAMP (لینوکس، آپاچی، مای اسکیول، پی اچ پی) در RedHat Enterprise 7.0 یا CentOS 7.0 مورد نیاز است. در مقاله بعدی از سری مقالات مربوط به LAMP Stack در CentOS/RHEL 7.0 میخواهیم نحوه ایجاد Virtual Hosts، تولید کردن SSL Certificates و Key ها و پشتیبانی SSL برای Apache HTTP Server را توضیح دهیم.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 09-22-2017, 10:13 PM.
    Telegram : https://telegram.me/linuxzone

    voip trainer - Asterisk - Elastix - Agi Programming- NewRock

    Voip Expert :ASTERISK-ELASTIX-NewRock Certified-With Experience of Working With
    Sangoma-Digium-Openvox-Synway-Atcom-Quintum Tenor-Polycom-Yealink-Rtx-Snom
    Cisco Collaboration - CME-CUCM-CUPs-CUC-WEBEX
    LPI ( Fundamental - LPI1 and LPI2 ) - Monitoring: ZABBIX-VOIPMONITOR-NAGIOS - CCNA

    Linkedin Profile : http://www.linkedin.com/profile/view...15&trk=spm_pic
در حال انجام ...
X
کانال تلگرام منطقه لینوکسی ها