جدول محتوایی

در این مقاله کوتاه نحوه تعیین یک php.ini سفارشی برای وب سایتی که روی Apache2 با mod_php اجرا می شود را به شما توضیح می دهیم. به این ترتیب، هر وب‌سایت می‌تواند به جای استفاده از پیش‌فرض سرور، فایل php.ini سفارشی خود را داشته باشد.

در این آموزش، از دامنه وب سایت www.example.com با ریشه سند /var/www/web1/web استفاده می کنیم.

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

 

دریافت جزئیات در مورد نصب PHP پیشفرض شما

اکنون یک فایل PHP کوچک (info.php) در ریشه سند ایجاد می کنیم و آن را در یک مرورگر فراخوانی می کنیم. فایل جزئیات مفیدی را در مورد نصب PHP ما، مانند مشخصات فایل php.ini استفاده شده را، نمایش می دهد.

برای این کار باید بوسیله یک ویرایشگر متن لینوکس (که ما از vim) استفاده میکنیم)، فایل info.php را با دستور زیر ایجاد کنیم.

nano /var/www/web1/web/info.php

 

پس از اینکه فایل ساخته شد، قطعه کد زیر را کپی و در آن پیست کنید.

<?php
  phpinfo();
?>

 

با فشردن کلید های Ctrl + O و سپس Enter تغییرات را ذخیره کنید.

در نهایت فایل ساخته شده را در مرورگر فراخوانی کنید تا مشخصات PHP سایت خود را ببینید. (به عنوان مثال http://www.example.com/info.php) :

اطلاعات php

 

همانطور که می بینید، وب سایت در حال حاضر از فایل /etc/php/8.1/apache2/php.ini استفاده می کند.

 

ساخت php.ini سفارشی برای یک وب سایت

باید فایل php.ini پیشفرض را با توجه به توزیع لینوکسی که استفاده میکنیم، در دایرکتوری سایتمان کپی کنیم.

برای دبیان و اوبونتو :

mkdir /etc/php/web1/
cp /etc/php/8.1/apache2/php.ini /etc/php/web1/

 

برای فدورا و CentOS :

mkdir /etc/php/web1/
cp /etc/php.ini /etc/php/web1/

 

(اکنون می توانید /var/www/web1/php.ini را به دلخواه تغییر دهید.)

سپس باید پیکربندی vhost را برای وب سایت www.example.com باز کنید و یک خط PHPINIDir به آن اضافه کنید. مراحل به شرح زیر است:

آپاچی با یک فایل میزبان مجازی یا vhost پیش فرض به نام 000-default.conf ارائه می شود که ما از آن به عنوان الگو استفاده خواهیم کرد. ما آن را کپی می کنیم تا یک فایل میزبان مجازی برای هر یک از دامنه های خود ایجاد کنیم.

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/www.example.com.conf

 

فایل جدید را در ویرایشگر خود باز کنید (ما از vim استفاده می کنیم) با امتیازات روت:

sudo nano /etc/apache2/sites-available/www.example.com.conf

 

حالا ما میتوانیم این فایل را برای دامنه خود سفارشی می کنیم. متن هایلایت شده زیر را با توجه به شرایط خود تغییر دهید.

<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

 

در اینجا تنها کاری که باید انجام دهید، اضافه کردن خط PHPINIDir  به فایل است. مانند زیر :

<VirtualHost 1.2.3.4:80>
[...]
PHPINIDir /etc/php/web1
[...]
</VirtualHost>

 

PHPINIDir باید شامل دایرکتوری باشد که فایل php.ini برای وب سایت در آن قرار دارد.

سپس آپاچی را مجددا راه اندازی کنید:

دبیان و ابونتو :

service apache2 restart

 

فدورا و CentOS :

service httpd restart

 

اکنون فایل info.php را دوباره در یک مرورگر (http://www.example.com/info.php) فراخوانی کنید:

مسیر php.ini شفارشی

 

همانطور که در تصویر بالا میبینید، خط مسیر فایل پیکربندی (php.ini) باید php.ini سفارشی جدید را نشان دهد.

 

11رای - امتیاز 5 ممنون از امتیازی که دادید..!