آموزش نصب LEMP در CentOS 7
با آموزش نصب LEMP در CentOS 7 از وبلاگ پرداز آی تی و دسته آموزش های سرور لینوکس در خدمت شما هستیم و قصد داریم تا نحوه کانفیگ لینوکس و نصب NGINX ، PHP و MariaDB درCentOS 7 معروف به LEMP را به طور کامل آموزش دهیم.
LEMP در حقیقت یک استک نرم افزاری برای سرور های لینوکسی است و با نصب این استک بر روی سرور های لینوکسی ، آن سرور را برای انجام کار های مورد نیاز خود مثل میزبانی وب و یا برنامه های تحت وب آماده می کنیم. استک LEMP شامل وب سرور NGNIX ( حرف E ) ، دیتابیس MariaDB ( حرف M ) و PHP ( حرف P ) است و حرف L نیز بیانگر Linux بودن سرور می باشد.
در ادامه با آموزش نصب LEMP در CentOS 7 همراه پرداز IT باشید تا برای شما نحوه نصب وب سرور NGNIX در CentOS 7 ، نصب دیتابیس MariaDB روی CentOS 7 و در نهایت نیز نصب PHP و ماژول های PHP بر روی CentOS 7 را آموزش دهیم.
توجه داشته باشید که از پیش نیاز این های این مطلب نصب و ایجاد دسترسی Sudo در سرور ( به دلیل دسترسی به روت سرور ) و همچنین تنظیم IP استاتیک در سرور است که لینک های این آموزش ها را برای شما قرار می دهیم تا در صورت نیاز از آنها استفاده کنید.
آموزش نصب و کانفیگ Sudo روی CentOS
آموزش نصب LEMP در CentOS 7
برای شروع ابتدا با دستور زیر پیش نیاز ها را آپدیت کنید.
sudo yum update
سپس با استفاده از دستور زیر ویرایشگر nano را بر روی سرور نصب کنید.
sudo yum install nano
آموزش نصب وب سرور NGINX در CentOS 7
ابتدا باید با استفاده از دستور زیر باید مخزن EPEL را بر روی سرور خود نصب کنید زیرا به طور پیش فرض وب سرور NGINX در مخازن CentOS وجود ندارد.
sudo yum install epel-release
پس از نصب مخزن EPEL ، با اجرا کردن دستور زیر می توانید وب سرور NGINX را در سرور CentOS خود نصب کنید.
sudo yum install nginx
پس از نصب شدن NGINX Web Server شما باید به کمک دستور زیر فعال کنید.
sudo systemctl start nginx
برای بررسی اینکه NGINX به درستی نصب شده و در حال اجرا است می توانید IP سرور را در یک مرورگر وارد کنید ، در صورتی که با مربوط به NGINX مواجه شدید یعنی وب سرور به درستی عمل می کند.
در صورت وجود مشکل ممکن است فایروال سرور فعال باشد و پورت بسته باشد.
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewalld-cmd --reload
با اجرا دستورات بالا شما می توانید پورت مربوط به وب سرور را باز کنید و سپس فایروال سرور را reload کنید.
با استفاده از دستور زیر نیز می توانید وب سرور را پس از هر بار بوت شدن اجرا کنید.
sudo systemctl enable nginx
آموزش نصب دیتابیس MariaDB در CentOS 7
بر روی سرور CentOS شما می توانید دیتابیس MySQL یا MariaDB را نصب کنید اما به دلیل هماهنگی بیشتر MariaDB با CentOS به شما پیشنهاد می کنیم که دیتابیس MariaDB را نصب کنید. MariaDB به طور پیش فرض در مخزن های CentOS وجود دارد.
با استفاده از دستور زیر می توانید MariaDB را نصب کنید.
sudo yum install mariadb-server mariadb
پس از نصب با اجرا دستور زیر می توانید MariaDB را فعال کنید.
sudo systemctl start mariadb
پس از فعال شدن سرویس شما باید دستور زیر را اجرا کنید.
sudo systemctl start mariadb
این دستور برای انجام تنظیمات امنیتی و افزایش امنیت دیتابیس است. در مرحله اول Enter زده و پس از آن یک رمز برای دیتابیس وارد کنید و یک بار دیگر نیز آن را تکرار کنید و Enter بزنید تا پیام Password updated successfully نمایش داده شود.
سایر تنظیمات امنیتی را می توانید Y یا Enter بزنید.
با استفاده از دستور زیر نیز می توانید دیتابیس را در هنگام بوت اجرا کنید.
sudo systemctl enable mariadb
آموزش نصب PHP در CentOS 7
ابتدا با اجرای دستور زیر PHP و ماژول های آن را نصب کنید.
sudo yum install php php-mysql php-fpm
حال شما برای تنظیم و کانفیگ PHP می توانید به دو صورت عمل کنید که روش اول استفاده از دستورات زیر است.
sudo sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /etc/php.ini sudo sed -i 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf sudo sed -i 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf
این دستورات در فایل های php.ini و www.conf تغییراتی را ایجاد می کند.
همچنین می توانید به کمک ویرایشگر nano به صورت دستی تنظیمات را اعمال کنید.
با اجرا دستور زیر به کمک ویرایشگر nano فایل php.ini را باز کنید.
sudo nano /etc/php.ini
در این فایل گزینه cgi.fix_pathinfo=1; را پیدا کرده و آن را به cgi.fix_pathinfo=0 تغییر دهید و کلید های CTRL + X را فشار دهید.
سپس با دستور زیر فایل www.conf را به کمک ویرایشگر nano باز کنید.
sudo nano /etc/php-fpm.d/www.conf
حال در این فایل اطلاعات زیر را به ترتیب تغییر دهید.
listen = /var/run/php-fpm/php-fpm.sock listen.owner = nobody listen.group = nobody user = nginx group = nginx
در نهایت برای فعال شدن PHP دستور زیر را اجرا کنید.
sudo systemctl start php-fpm
با استفاده از دستور زیر نیز PHP را پس از هر بوت اچرا کنید.
sudo systemctl enable php-fpm
تنظیم NGINX برای کار با PHP
در ادامه آموزش نصب LEMP در CentOS 7 باید با استفاده از دستور زیر یک فایل default.conf در سرور جهت کانفیگ NGINX بسازید.
sudo nano /etc/nginx/conf.d/default.conf
سپس داخل این فایل در صورت وجود دستور ، آنها را حذف کرده و دستورات زیر را به طور کامل وارد کنید.
server { listen 80; server_name your_server_ip; # note that these lines are originally from the "location /" block root /usr/share/nginx/html; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
در مقابل Server IP در این دستور شما باید IP سرور خود را وارد کنید.
سپس کلید های CTRL + X را زده تا اطلاعات ذخیره شده و دستور زیر را وارد کنید تا وب سرور ریستارت شود.
sudo systemctl restart nginx
سپس با استفاده از دستور زیر یک فایل info.php ایجاد کرده و با استفاده از ویرایشگر nano آن را باز کنید.
sudo nano /usr/share/nginx/html/info.php
حال این تکه کد را داخل این فایل قرار دهید و آن را ذخیره کنید.
<?php phpinfo(); ?>
در نهایت برای اینکه از اجرا صحیح PHP بر روی وب سرور NGINX مطمئن شویم مروگر را باز می کنیم و ابتدا IP سرور خود را وارد کرده و یک / زده و آدرس فایل info.php را وارد می کنیم.
مثال : 192.192.192.192/info.php
در صورتی که صفحه اطلاعات PHP برای شما باز شد یعنی PHP به درستی بر روی وب سرور اجرا می شود.
به پایان آموزش نصب LEMP در CentOS 7 رسیدیم و امیدواریم که از آموزش نصب LEMP در CentOS 7 بهره برده باشید.