در این مطلب میخواهم بهتون آموزش استفاده از دو پروتکل http و https بصورت همزمان در فریم ورک کدایگنایتر (CodeIgniter) یاد بدم؛
حتما برای شمام پیش اومده که برای امنیت بیشتر برای سایت خود پروتکل https رو فعال کنید. ولی بدلیل برخی از محدودیتها یا ایراداتی از سمت کاربر ممکنه سایت شما با این پروتکل باز نشه!
خب در این مواقع بهترین راه فعال نگهداشتن هر دو پروتکل هست!همونطور که میدونید در کد ایگنایتر در فایل config.php ما یک متغییر برای وارد کردن ادرس سایت داریم ولی در این متغییر ما فقط میتونیم سایت رو با یک پروتکل وارد کنیم!
من دو روش به ذهنم رسید که در زیر براتون توضیح میدم.
روش اول وارد نکردن پروتکل در ادرس سایت
به مثال زیر توجه کنید :
$config['base_url'] = '//farhadhp.ir/';
روش دوم استفاده از کد برای تشخیص پروتکل وارد شده توسط کاربر و تعیین آدرس سایت توسط آن
من یک تیکه کد نوشتم تا پروتکل وارد شده توسط کاربر رو اول تشخیص میده و بعد با توجه به آن، پروتکل آدرس base_url رو مشخص میکنه.
$protocol = ( isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on' ) ? 'https' : 'http'; $config['base_url'] = $protocol.'://farhadhp.ir';
هر دو روش رو امتحان کردم و هر دو روش به نحو احسن کار میکنند ولی روش دوم بنظرم اصولی تر هستش.
سوالی بود در خدمتم.