خطای Invalid command php_admin_flag چیست؟
خطای Invalid command 'php_admin_flag' هنگام استارت یا ریاستارت Apache رخ میدهد. این خطا نشاندهنده استفاده از دستور php_admin_flag یا php_admin_value در فایل پیکربندی Apache یا .htaccess است، در حالی که PHP به صورت ماژول Apache (mod_php) نصب نیست.
دلیل خطا
دستورات php_admin_flag و php_value فقط زمانی کار میکنند که PHP به عنوان ماژول Apache (mod_php) اجرا شود. اگر PHP از طریق PHP-FPM، CGI یا suPHP اجرا میشود، این دستورات نامعتبر هستند و Apache خطا میدهد.
روشهای رفع
روش ۱: حذف دستورات نامعتبر
فایل .htaccess یا فایلهای پیکربندی Apache را بررسی و دستورات php_admin_flag، php_admin_value، php_flag و php_value را حذف یا کامنت کنید:
# php_admin_flag engine off
# php_value upload_max_filesize 64M
روش ۲: استفاده از .user.ini
در حالت PHP-FPM، به جای .htaccess از فایل .user.ini برای تنظیمات PHP استفاده کنید:
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
روش ۳: استفاده از IfModule
اگر نمیخواهید دستورات را حذف کنید (مثلاً سایت روی سرورهای مختلف اجرا میشود):
<IfModule mod_php7.c>
php_admin_flag engine off
</IfModule>
روش ۴: نصب mod_php (اگر لازم است)
اگر واقعاً به mod_php نیاز دارید، در دایرکت ادمین:
cd /usr/local/directadmin/custombuild
./build set php1_mode mod_php
./build php
تنظیمات PHP در حالتهای مختلف
در حالت mod_php از php_value در .htaccess استفاده میشود. در حالت PHP-FPM از فایل .user.ini استفاده میشود. در حالت CGI/FastCGI از php.ini محلی استفاده میشود.
اگر نیاز به تغییر حالت PHP سرور دارید، خدمات کانفیگ سرور میهن هاستینگ شامل پیکربندی PHP و Apache نیز میشود. هاست وردپرس میهن هاستینگ با PHP-FPM بهینه و بدون نیاز به تنظیمات دستی ارائه میشود.