در نسخه جدید دایرکت ادمین، امکان انتخاب بین چندین نسخه مختلف PHP به کاربران داده شده است. پس از انتشار DirectAdmin 1.56.0 امکان استفاده از حداکثر 4 نسخه فعال PHP برای کاربران فراهم شده است. به این صورت کاربران با توجه به نیاز خود از میان این گزینهها نسخه موردنظر را انتخاب میکنند. البته توصیه میشود از آخرین نسخه CustomBuild 2.0
استفاده کنید.
اولین نسخه PHP نسخه پیش فرض خواهد بود و همه برنامههای وب را اجرا میکند.
کاربران میتوانند بین نسخههای موجود در صفحه راهاندازی دامنه خود در دایرکت ادمین یکی را انتخاب کنند
cd /usr/local/directadmin/custombuild ./build update ./build set php1_release 7.1 ./build set php2_release 5.6 ./build set php3_release 7.0 ./build set php4_release 7.3 ./build set php1_mode php-fpm ./build set php2_mode php-fpm ./build set php3_mode php-fpm ./build set php4_mode php-fpm ./build php n ./build rewrite_confs
تمام آنها نسخههای PHP را با PHP-FPM به عنوان کنترل کننده کامپایل میکند. شما میتوانید شماره نسخهها و کنترل کنندههای PHP را به دلخواه تغییر دهید.
اگر به کمتر از 4 نسخه PHP نیاز دارید، نسخه داده شده را روی “no” تنظیم کنید، به عنوان مثال:
./build set php4_release no
./build rewrite_confs
برای استفاده از انتخابگر نسخه PHP چندگانه، باید مطمئن شوید که php_version_selector
در پیکربندی DirectAdmin فعال است. به این صورت به طور پیشفرض باید روی ‘1’ تنظیم شده باشد.
/usr/local/directadmin/directadmin config | grep php_version_selector
اگر به دلایلی فعال نشد، آن را به صورت زیر فعال کنید:
/usr/local/directadmin/directadmin set php_version_selector 1 restart
استفاده از یک نسخه PHP متفاوت برای یک زیر دامنه
میتوانید یک نسخه PHP سفارشی را از طریق داشبورد User DA GUI / Sub-Domains Setup / Document Root Override
در بخش “PHP Version Selector ” به یک زیر دامنه اختصاص دهید.
این ویژگی و رابط کاربری گرافیکی آن از ویژگی فایل DocumentRoot زیردامنه استفاده میکند، بنابراین نیاز به allow_subdomain_docroot_override=1 در directadmin.conf و حداقل 2 نسخه PHP برای فعال کردن در CustomBuild options.conf دارد.
این کار باید از طریق فایل /usr/local/directadmin/data/users/USERNAME/domains/DOMAIN.COM.subdomains.docroot.override
پیاده سازی شود. این فایل فرمت دادههای موجود را گسترش داده و به شما امکان میدهد نسخه مورد نظر را اضافه کنید:
php1_select=1-4
البته به تنظیمات شما در CustomBuild options.conf. بستگی دارد.
برای مثال، اگر php1_select=2
را تنظیم کنید، از php2_release
و php2_mode
برای این زیر دامنه استفاده میشود.
محتویات فایل domain.com.subdomains.docroot.override
نشان دهنده یک زیر دامنه در هر خط است.
به عنوان مثال، اگر sub.domain.com
دارید، یک خط نمونه ممکن است به صورت زیر باشد:
sub=php1_select=2
یا اگر بازنویسیهای public_html/private_html نیز وجود داشته باشد، ممکن است به صورت زیر مشاهده شود:
sub=public_html=/domains/otherdomain.com/public_html&private_html=/domains/otherdomain.com/private_html&php1_select=2
که در آن دادههای بعد از اولین کاراکتر = URL کدگذاری شده هستند.
انتخابگر PHP CloudLinux
اگر از CloudLinux استفاده میکنید و php1_mode=lsphp دارید، میتوانید از پلاگین CloudLinux PHP Selector استفاده کنید.
توجه داشته باشید که اگر از انتخابگر DA PHP نیز استفاده میکنید، انتخاب CloudLinux تنها زمانی تأثیری دارد که دامنه از اولین نمونه DA PHP استفاده کند.
تعویض PHP انتخابی کاربران
در برخی موارد، ممکن است لازم باشد تمام انتخابهای کاربر PHP را برای اجرای نسخه اضافی PHP تغییر دهید. ما از نسخه دوم (2) در مثال استفاده میکنیم، اگر میخواهید از 3 یا 4 به عنوان php انتخابی استفاده کنید، فقط شماره را تغییر دهید.
توصیه میکنیم قبل از آزمایش این اسکریپت از همه فایلهای /usr/local/directadmin/data/users/*/domains/*.conf
نسخه پشتیبان تهیه کنید.
#!/bin/sh #default to swap if nothing present. foriin`ls /usr/local/directadmin/data/users/*/domains/*.conf`;do { if!grep-q ^php1_select $i;then echophp1_select=2>>$i continue fi perl -pi-e"s/^php1_select=.*/php1_select=2/"$i }; done exit 0
اسکریپت را ذخیره کنید، آن را قابل اجرا کنید و از دستورات زیر برای بازنویسی استفاده کنید:
cd /usr/local/directadmin/custombuild ./build update ./build rewrite_confs