• ثبت نام
  • ورود
  • 49624 - 021 تلفن
  • ثبت نام
  • ورود
  • 49624 - 021 تلفن

آموزش کانفیگ PHP 7 و Nginx در Ubuntu 16.04

configure nginx + php7 on ubunto - novinhost.org

رقابتی سختی میان Apache و Nginx بر سر مقام محبوب ترین وب سرور وجود دارد. زبان های Ruby و Python سازگاری بسیار خوبی با Nginx و PHP سازگاری خوبی با آپاچی دارد, اما با آمدن PHP7 امکان ترکیب PHP و Nginx نتیجه پر سرعتی خواهد داشت.

configure nginx + php7 on ubunto - novinhost.org

 

 

ابتدا بسته های لازم را نصب میکنیم:

# sudo apt-get update && sudo apt-get -y upgrade

# sudo apt-get -y install nginx php7.0 php7.0-fpm

پس از اتمام نصب با systemd اطمینان حاصل کنید که هر دو در حال اجرا هستند

# sudo systemctl status nginx

# sudo systemctl status php7.0-fpm

در صورتی که انجین ایکس با موفقیت نصب و اجرا شده باشد, با باز کردن آدرس localhost در مرور گر, صفحه خوشامد گویی انجین ایکس را مشاهده خواهدی نمود.

در غیر این صورت بت دستور systemctl start nginx میتوانید وب سرور را آتش کنید.

Nginx هم مثل آپاچی فایل کانفیگ خود را در آدرس /etc/nginx نگه میدارد, کانفیگ پیشفرض به خوبی کار میکند مگر اینکه بخواهید فشرده سازی Gzip

را فعال کنید. برای بهبود امنیت وب سرور بهتر است سه خط زیر را به فایل کانفیگ اضافه کنید:

add_header X-Frame-Options SAMEORIGIN;

add_header X-Content-Type-Options nosniff;

add_header X-XSS-Protection “1; mode=block”;

لازم نیست بگویم که با دستور systemctl restart nginx فایل کانفیگ بازخوانی میشود.

برای پیکربندی سایت به پوشه روت انجین ایکس که معمولا در مسیر /etc/nginx قرار دارد مراجعه کنید.

دو پوشه با نام های sites-available و sites-enabled  وجود خواهد داشت, پوشه اول پیکربندی سایت های شما را نگهداری میکند و دومی لینک های symlink به پوشه قبلی ارجاع میدهند, با این کار, تنها با حذف و اضافه کردن لینک ها میتوانید سایت ها را فعال یا غیر فعال کنید.

با ویرایشگر متن خود فایلی با نام و آدرس

/etc/nginx/sites-available/yoursite

ایجاد کنید.

server {  	 	#Nginx should listen on port 80 for requests to yoursite.com 	listen 80;  	server_name yoursite.com;  	#Create access and error logs in /var/log/nginx 	access_log /var/log/nginx/yoursite.access_log main;  	error_log /var/log/nginx/yoursite.error_log info;  	#Nginx should look in /var/www/yoursite for your website 	root /var/www/yoursite/; 	#The homepage of your website is a file called index.php  	index index.php;  	#Specifies that Nginx is looking for .php files 	location ~ \.php$ {  		#If a file isn’t found, 404 		try_files $uri =404;  		#Include Nginx’s fastcgi configuration 		include /etc/nginx/fastcgi.conf; 		#Look for the FastCGI Process Manager at this location  		fastcgi_pass unix:/run/php/php7.0-fpm.sock;  	}  } 

خط 

	root /var/www/yoursite/; 

 مشخص میکند که وب سرور در آدرس  /var/www/yoursite/ باید محتویات سایت شما را پیدا کند.

حالا باید یک لینک از فایل کانفیگ ایجاد شده, در پوشه sites-enabled ایجاد کنید.

# cd /etc/nginx/sites-enabled

# sudo ln -s /etc/nginx/sites-available/yoursite

حالا برای امنیت بیشتر بهتر است نگاهی به php.ini بیندازیم.

فایل پیکربندی پی اچ پی ۷ در آدرس /etc/php/7.0/fpm/php.ini قرار دارد, آنرا با ویرایشگر متن مورد علاقه تان باز کرده

و در خط disable_functions گزینه های phpinfo,system,mail,exec را اضافه کنید. بعد در مقابل file_uploads  مقدار Off

در مقابل sql.safe_mode مقدار On و در مقابل خط allow_url_fopen مقدار Off را جایگزین کنید.

اضافه کردن خط

register_globals = Off

  به این فایل هم به امنیت سرور می افزاید.

حالا با ریستارت php و nginx سرور شما آمده است:

# sudo systemctl restart php7.0-fpm

# sudo systemctl restart nginx

حالا با ارسال درخواست مشاهده سایت به سرور انجین ایکس در پوشه /var/www/yoursite به دنبال فایل index.php خواهد گشت تا به کاربر نمایش دهد.

 

برای کسب اطلاعات در مورد خدمات ارائه شده توسط نوین هاست ، از جمله ثبت نام دامنه ، خرید هاست ، سرور مجازی در لوکیشن های مختلف ، سرور اختصاصی ، هاست دانلود ، هاست اشتراکی و راه حل های هاستینگ ، به www.novinhost.org مراجعه کنید یا با شماره ۶۶۰۱۵۸۹۱ تماس بگیرید تا با یکی از اعضای بخش فروش ما صحبت کنید. پیروز و سر بلند باشید.

نوشته مشابه

ثبت نظر