در تنظیمات آپاجی ، کاربران هنوز در مورد نحوه اجرای PHP در حالتهای suPHP, suPHPexec and Apache suEXEC را بخوبی نمی دانند . قصد دارم در این تاپیک به معرفی این سرویس ها و فواید و مشکلات هریک از حالتهای فوق را بررسی نماییم .
Suexec کلیه اسکریپت های CGI تحت مجوز و نام کاربر اجرا می شود .
Suphp کلیه اسکریپت های PHP تحت مجوز و نام کاربر اجرا می شود .
DSO یعنی آپاچی بشکل Module می باشد و برنامه های PHP توسط یک کاربر عمومی nobody اجرا می شود . مزیت این روش سرعت است و PHP در سریعترین حالت ممکن اجرا می شود .
چون کلیه اسکریپت های PHP تحت یک نام اجرا می شوند و بر روی سرور های اشتراکی کاربران می توانند فایلهای PHP دیگر کاربران را اجرا نمایند ، این مشکل امنیتی با فعال نمودن open_basedir تا حدودی برطرف شده است .
DSO برای سرورهای اختصاصی ( تک کاربره ) و کسانی که دوست دارند برنامه های PHP در سریعترین حالت ممکن اجرا شوند ، مناسب می باشد !
Suphp این محدودیت را ایجاد می کند که هر کاربر اسکریپت PHP خود را اجرا نماید و سی پنل جهت امنیت این حالت را برای مدیران سرور توصیه می کند . مانیتورینگ را راحت می کند چون در دستوراتی مثل top متوجه می شوید که اسکریپت PHP درحال اجرا متعلق به کدام کاربر است . اما اشکالاتی بوجود میاد که شامل کارنکردن eAccelerator ، از کار افتادن htaccess ، امکان ویرایش کامل php.ini توسط کاربران و کندی PHP می باشد .
حالا مدیر سرور با توجه به اینکه چه کابرانی دارد و چه برنامه هایی می خواهد روی سرور اجرا کند ، می تواند با توجه به مزیبتهای هر روش ، مناسبرتین حالت که خواسته ها را برطرف نماید انتخاب نماید .