فعال سازی اکستنشن php
اکستنشنهای PHP یا همان ماژولهای PHP بخش مهمی از فرایند توسعه PHP هستند که عملکرد این زبان را برای پاسخگویی به نیازهای مختلف بهبود میبخشند. برای فعالسازی اکستنشنهای PHP، نیازی به دسترسی روت سرور نیست و شما میتوانید حتی از طریق کنترل پنل هاست خود نسبت به فعال کردن ماژولها یا حتی بهروزرسانی نسخه PHP اقدام کنید. در این مقاله روشهای مختلفی را برای فعالسازی اکستنشنهای PHP ارائه میکنیم. به عنوان اولین روش، نحوه فعالسازی اکستنشن PHP از طریق Select PHP Version را آموزش خواهیم داد. در روشهای بعدی، نحوه فعالسازی PHP از طریق فایل .htaccess و فعالسازی PHP از طریق دسترسی روت را نیز بررسی خواهیم کرد.
فعال و غیرفعال کردن اکستنشنهای PHP از طریق Select PHP Version
اگر میخواهید از طریق کنترل پنل نسبت به فعال کردن ماژولهای PHP اقدام کنید، راحتترین روش استفاده از گزینه Select PHP Version است. فرقی نمیکند از چه کنترل پنلی استفاده میکنید، کافی است گزینه Select PHP Version را در هاست خود داشته باشید.
دقت داشته باشید که در این روش، لازم است سیستمعامل سرور میزبان هاست شما حتما CloudLinux باشد. در غیر این صورت، شما گزینه Select PHP Version را در هاست خود نخواهید داشت و ملزم به استفاده از سایر روشها هستید.
بنابراین، اگر سرویس شما بر بستر CloudLinux است و از کنترل پنل دایرکت ادمین یا سیپنل استفاده میکنید، مراحل زیر را برای فعال کردن اکستنشنهای PHP طی کنید.
- وارد کنترل پنل شده و در منوی Software روی گزینه Select PHP Version کلیک کنید.
- در صفحه جدید، روی تب Extensions کلیک کنید.
- در این قسمت، اکستنشنهای مختلف PHP را مشاهده میکنید.
نکته: اگر در این قسمت ماژولهای PHP را مشاهده نکردید، به انتهای همین مقاله مراجعه کرده و نحوه تغییر نسخه PHP را مطالعه کنید. مطابق روش ارائه شده نسبت به انتخاب یکی از نسخههای PHP اقدام کنید، سپس مراحل زیر را ادامه دهید.
- با علامت زدن چکباکس کنار هر ماژول، میتوانید آن ماژول را در هاست خود فعال کنید.
نکته: دقت داشته باشید فعال کردن ماژولهایی که نیازی به آنها ندارید، میتواند منجر به ایجاد اختلال در هاست شما شود. بنابراین، فعال کردن تمام ماژولهای PHP برای جلوگیری از خطاهای احتمالی به هیچ عنوان توصیه نمیشود.
فعالسازی اکستنشنهای PHP از طریق MultiPHP INI Editor
اگر سرویس هاست شما از CloudLinux پشتیبانی نمیکند، میتوانید از طریق گزینه MultiPHP INI Editor برای فعال کردن ماژول PHP اقدام کنید. توجه داشته باشید که ویرایش نسخههای PHP از طریق MultiPHP INI Editor منجر به ایجاد فایلی با نام php.ini در هاست شما خواهد شد.
- وارد کنترل پنل هاست خود شده و در بخش Software روی گزینه MultiPHP INI Editor کلیک کنید.
- ابتدا روی Select a Location کلیک کرده و دامنه مورد نظر را انتخاب کنید.
- بعد از انتخاب مسیر مورد نظر، میتوانید از طریق تب Basic Mode نسبت به ویرایش مقادیر PHP اقدام کنید.
نکته ۱: در صورتی که دانش کدنویسی دارید و با کدهای دستوری زبان PHP آشنا هستید، میتوانید پس از وارد شدن به محیط MultiPHP INI Editor، وارد بخش Editor Mode شده و با وارد کردن دستورات مورد نیاز، مقادیر PHP را تعیین کنید. در این حالت، در واقع شما در حال ویرایش فایل php.ini هستید و لازم است پارامترهای دلخواه خود را در فضای کدنویسی وارد کنید.
نکته ۲: در صورتی که قبلاً فایل php.ini در هاست شما ایجاد شده است، میتوانید وارد File Manager شده و در پوشه public_html، مستقیماً نسبت به ویرایش فایل php.ini اقدام کنید و محتوای مورد نظر را در آن قرار دهید.
فعال کردن ماژول PHP از طریق دسترسی روت
گاها ممکن است به دلیل نصب نبودن کنترل پنل یا عدم دسترسی به کنترل پنل، نیاز داشته باشیم اکستنشن PHP را از طریق دسترسی روت سرور فعال کنیم. در این صورت، به SSH سرور لینوکسی خود متصل شده و مراحل زیر را طی کنید.
- اگر از نسخه فعلی PHP سرور خود اطلاعی ندارید، میتوانید با استفاده از دستور زیر نسخه PHP را مشاهده کنید:
$ php –version
خروجی دستور بالا مشابه زیر خواهد بود.
PHP 7.2 (cli) (built: May 22 2024 00:50:49) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.30, Copyright (c) Zend Technologies
with Zend OPcache v8.0.30, Copyright (c), by Zend Technologies
- برای بررسی ماژولهای نصب شده در سرور نیز میتوانید از دستور زیر استفاده کنید.
$ php72 –modules
خروجی دستور بالا به صورت زیر است:
[PHP Modules]
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
json
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
readline
Reflection
session
SimpleXML
sockets
SPL
sqlite3
standard
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zlib
[Zend Modules]
Zend OPcache
نکته: توجه داشته باشید اگر ماژولی مد نظرتان است که در لیست ماژولهای نصب شده سرور شما وجود ندارد و در خروجی دستور بالا دیده نمیشود، لازم است ابتدا نسبت به نصب آن ماژول اقدام کنید. با توجه به اینکه نصب ماژولهای مختلف گاهی اوقات متفاوت از یکدیگر است، در این صورت لازم است ابتدا نسبت به نصب ماژول مورد نظر اقدام نمایید. در ادامه، به عنوان یک نمونه پرکاربرد، نحوه نصب و فعالسازی ماژول ionCube Loader را بررسی میکنیم.
نصب ماژول ionCube در سنتوس
با توجه به اینکه نصب ماژولهای مختلف PHP از طریق دستورات لینوکس با یکدیگر متفاوت است، در این بخش با توجه به پرکاربرد بودن ماژول ionCube، نحوه نصب ماژول ionCube Loader در لینوکس را بررسی خواهیم کرد.
نکته: برای نصب ماژولهای PHP حتماً لازم است دسترسی به روت سرور داشته باشید. بنابراین، در صورتی که از هاست اشتراکی استفاده میکنید و ماژول مورد نظر شما در لیست ماژولهای نصب شده سرور وجود ندارد، لازم است مورد را با پشتیبان هاست خود مطرح کنید.
- در مرحله اول لازم است نسبت به دانلود فایلهای مربوط به اکستنشن ionCube Loader اقدام کنید. برای این منظور به صورت زیر اقدام کنید:
$ cd /tmp
$ wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
- فایل دانلود شده را با استفاده از دستور tar از حالت فشرده خارج کنید.
$ tar -xvf ioncube_loaders_lin_x86*
- وارد پوشه ioncube شده و محتوای فایل را با دستور ls مشاهده کنید.
$ cd ioncube
$ ls -l
- با دستور زیر می توانید مسیر پوشه مربوط به نسخه php مورد نظر خود را پیدا کنید.
$ php -i | grep extension_dir
- خروجی دستور بالا مشابه زیر است:
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules
- با استفاده از دستور زیر میتوانید ioncube را در مسیر بالا کپی کنید.
$ cp ioncube_loader_lin_7.2.so /usr/lib64/php/modules
- در مرحله آخر لازم است فایل php.ini در مسیر /etc/php.ini را ویرایش کرده و محتوای زیر را در خط اول آن اضافه کنید.
zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_5.4.so
- در نهایت لازم است وب سرور را ریستارت کنید.
برای این منظور اگر وب سرور شما آپاچی است از دستور زیر استفاده کنید.
$ systemctl restart httpd
اما اگر از nginx استفاده می کنید، برای ریستارت وب سرور دستور زیر را وارد کنید.
$ systemctl restart nginx
چگونه میتوان نسخه PHP و اکستنشنهای نصب شده را بهروزرسانی کرد؟
برای بهروزرسانی نسخههای PHP میتوانید هم از طریق Select PHP Version و هم از طریق MultiPHP INI Editor اقدام کنید و به راحتی نسخه PHP مورد نظرتان را تنظیم کنید. توجه داشته باشید در هر دو بخش اعلام شده، فقط نسخههای PHP نصب شده روی سرور نمایش داده میشود. بنابراین، اگر نسخهای از PHP مد نظرتان است که در این قسمتها نمایش داده نمیشود، لازم است از طریق دسترسی روت به سرور، اقدام به نصب نسخه جدید PHP کنید.
به روز رسانی نسخه php از طریق select php version
برای این منظور لازم است سیستم عامل میزبان هاست شما کلود لینوکس باشد. در غیر این صورت گزینه select php version در هاست شما وجود ندارد و لازم است از روش بعدی استفاده کنید.
- وارد کنترل پنل هاست خود شده و روی گزینه select php version کلیک کنید.
- در این بخش روی گزینه current php version کلیک کرده و یکی از نسخههای php را انتخاب کنید.
- پس از انتخاب نسخه php مورد نظر، روی دکمه Apply کلیک کنید تا تنظیمات اعمال شود.
به روز رسانی نسخه php از طریق MultiPHP Manager
اگر هاست شما از کلود لینوکس پشتیبانی نمیکند، احتمالا گزینهای تحت عنوان MultiPHP Manager را در هاست خود خواهید دید. برای تغییر نسخه php از طریق MultiPHP Manager لازم است به صورت زیر اقدام کنید.
- وارد کنترل پنل هاست خود شده و روی گزینه MultiPHP Manager کلیک کنید.
- در صفحه جدید چک باکس کنار نام دامنه مورد نظر خود را تیک زده و مشابه تصویر زیر، نسخه php را انتخاب کنید.
به این ترتیب نسخه php در هاست شما تنظیم خواهد شد.
مطلب پیشنهادی: رفع خطای Pluggable.php در وردپرس
سخن پایانی
اکستنشنهای PHP نقش بسیار مهمی در افزایش کارایی و قابلیتهای زبان برنامهنویسی PHP ایفا میکنند. در این مقاله، به بررسی روشهای مختلف فعالسازی و مدیریت اکستنشنهای PHP پرداختیم. با بهرهگیری از این راهنما، توسعهدهندگان میتوانند به راحتی اکستنشنهای مورد نیاز خود را در محیطهای مختلف توسعه و سرور فعال کنند و از قابلیتهای بیشتری بهرهمند شوند.