আপনার ওয়ার্ডপ্রেস সাইটটা SSL এর আওতায় নিয়ে আসলে লিংকে বা কন্টেন্ট এর ইউআরএল এর সমস্যা দেখায়। অনেক সময় কন্টেন্ট শো করে না বিভিন্ন ইরোর দেখায়।
আবার সাইটটা SSL এর অওতায় নিয়ে আসার পরও আপনার সাইটের URL- http দেখায়। আপনার সাইটের ইউজাররা https লিংকটি পায় না।
এই পোস্টে আমরা দেখাব, SSL এ আপনার ওয়ার্ডপ্রেস সাইট নিয়ে আসলে কিকি আনএক্সেপটেড সমস্যা তৈরি হয়। এবং সকল সমস্যার সমাধান দুইটি পদ্ধতিতে করা দেখাব। যেমন:- ১. ওয়ার্ডপ্রেস প্লাগিন, ২. ম্যানুয়াল পদ্ধতি।
যারা বিগিনার লেভেলের এবং ওয়েবসাইটের ব্যপারে আগে কোনো ধারণা নাই তাদের জন্য প্রথম পদ্ধতি অর্থাৎ প্লাগিনের ব্যবহার করা শ্রেয়। টিউটেরিয়াল শুরু করার আগে যাদের SSL/HTTPS সম্পর্কে কোনো ধারনা নাই তাদের জন্য কিছু কথা।
SSL/HTTPS কি এবং কেন এটা আমাদের সাইটে ব্যবহার করব।
SSL/HTTPS একটি এনক্রিপশন পদ্ধতি যেটা ইউজারের ব্রাউজার ও ওয়ার্ডপ্রেস হোস্টিং এর ভিতরের কানেকশন সিকিউর করে। যেটা হ্যাকারের জন্য অড়িপেতে তথ্য সংগ্রহ করাকে কষ্টকর করে তোলো। অর্থাৎ হ্যাকাররা সহজে কোনো তথ্য লিক করতে পারে না।
প্রত্যেকটি SSL সর্টিফিকেটের নির্দিষ্ট অইডেন্টিফিকেশন কোড আছে। অনেক ইউজার আছে যারা SSL সার্টিফিকেটস বাদেই সাইটের http এর স্থানে https দিয়ে সার্চ করে তখন ব্রউজার নিচের মতো সতর্কবানী দেয়। তাই কখনও ভাববেননা SSL সার্টিফিকেটস না আপনি নিয়েই https দেখাবেন।
ফেব্রুয়রী ২০১৮ সালের দিক থেকে গুগল ঘোসনা দেয় গড়ে সকল ইন্টরনেটের সিকিউরিটির জন্য সকল সাইটের SSL/HTTPS সার্টিফিকেটস নেয়া বাধ্যতামূলক। কোনো সাইটের এসএসএল সার্টিফিকেটস না থাকলে ক্রোমসহ মর্ডান ব্রাউজার সাইটকে Not secure হিসেবে ঘেষনা করে।
‘Not secure’ লেখা ইউজারের মনে খারাপ ইম্প্রেশন ক্রিয়েট করে। যেটা থাকলে সাইটে কেউই নিজের পার্সোনাল ইনফরমেশন শেয়ার করবে না। তাছাড়া আপনার সাইট কেউ ব্যবহার করতে চাইবে না।
আপনার সাইটে পেমেন্ট মেথড যোগ করতে বা অনলাইনে ব্যবসা করতে পারবেন না। কোনো ক্লাইন্ট রিস্ক নিয়ে ওয়েবসাইটে পেমেন্ট করবে না।
গুগলে আপনার সাইটের র্যাংক করার সম্ভাবনা থাকবে না। এককথায় SSL/HTTPS না থাকলে আপনার সাইটের কোনো ভ্যালু নাই। তাই আজই SSL প্রভাইডার অথবা ডোমেইন বা হোস্টিং প্রভাইডারের কাছ থেকে SSL সার্টিফিকেটস নিয়ে নিন।
আপনি যদি ইতোমধ্যে ডোমেইনের জন্য SSL সার্টিফিকেটস নিয়ে থাকেন তাহলে হয়তো নিচের যেকোনো একটি সমস্যার সম্মুখীন হয়েছেন। কিকি সমস্যা আসতে পারে ও তার সহজ সমাধান কিভাবে করবেন।
০১. Fix NET::ERR_CERT_INVALID Error
SSL সার্টিফিকেট ইনস্টল করার পরও, এই ইরোর গুগল ক্রোমে দেখাতে পারে। অন্য বাউজার গুলোয় একই নোটিফিকেশনটা অন্যভাবে দেখাতে পারে। তবে সকল সতর্কবানী একটা তা হল ইউজারের জন্য সাইটটি সিকিউর হয়নি।

এই ওয়ার্নিয়ের মানে আপনার সাইটের এসএসএল টি ইউজারের ব্রাউজার একসেপ্ট করছে না। ইউজারের ব্রাউজার আপনার SSL সার্টিফিকেটস একসেপ্ট না করার কিছু কারন ও সমাধান:
- আপনার SSL certificates টি অন্য ডোমেইন বা সাব-ডোমেইনের নামে ইস্যু করা হয়েছে।
- সার্টিফিকেটসটি মেয়াদ উত্তীর্ণ হয়ে গেছে।
- আপনার ব্রাউজার সার্টিফিকেটস দাতা কর্তৃপক্ষকে স্বীকৃতি দেয় না।
আপনি যদি SSL সার্টিফিকেটসটা ক্রয় করে, আপনার হোস্টিং প্রভাইডারের কাছে ইনস্টল করতে দেন। আপনার পক্ষ হতে, হোস্টিং প্রভাইডার সার্টিফিকেট দাতা কোম্পানীর সাথে যোগাযোগ করবে। এবং সমস্যার সমাধান করে দিবে।
যদি আপনি নিজে ম্যানুয়ালী ইনস্টল করে থাকেন তবে আন-ইনস্টল করে আবার ইনস্টল করুন। যদি সমস্যার সমাধন হয় ভালো, না হলে সার্টিফিকেটস দাতা কোম্পানীর সাথে যোগাযোগ করতে হবে।
০২. ’Mixed Content Errors’ সমস্যার সমাধান।
Mixed Content Errors তখন দেখাবে যখন আপনার সাইট SSL/HTTPS এই সার্ভিসের আওতায় নিয়ে এসেছেন। কিন্তু সাইটের স্টাইল, জাভাস্ক্রিপ্ট ও ইমেজের ফাইল গুলো এখনো HTTPS প্রটোকলের আওতায় নিয়ে আসেন নি।
যদি এই সমস্যা থাকে তবে আপনার সাইটের এড্রেস-বারে সিকিউর প্যাডলক আইকোন দেখাবে না বা ইনেবল হবে না।
আমি এই পোস্টে এই সমস্যাটির দুটি সমাধান নিয়ে কথা বলব। আপনার জন্য সুবিধাজনক হয় সেটা এপ্লাই করবেন।
২.১ প্লাগিন ব্যবহার করে ’Mixed Content Errors’ সমস্যার সমাধান।
এই পদ্ধতিটি বিগিনারদের জন্য আমি পার্সোনালি রিকমেন্ড করি।
প্লাগিন ব্যবহার করে সমস্যাটির সমাধান একদম সহজ, আপনি শুধুমাত্র Really Simple SSL প্লাগিন ইনস্টল ও একটিভ করবেন।
একবার ইনস্টল ও একটিভ করা হয়ে গেলে, Settings>>SSL প্লাগিনের সেটিংস পেজটা ভিজিট করুন। Really Simple SSL প্লাগিনটা আউট অফ বক্সের বাইরে কাজ করে। আমি বলতে চাইছি, আপনার কোনো কনফিগারেশন ছাড়াই অটোমেটিক সমস্যাগুলোর সমাধান করে দেয়।
নোট:– প্লাগিনটি আউটপুট বাফারিং প্রযুক্তি ব্যবহার করে ’Mixed Content Errors’ সমস্যার সমাধানের চেষ্টা করে। যেটা সাইটের পেজ লোড টাইম হালকা বাড়ায়। এই প্লাগিনের এটাই খারাপ দিক। তবে আপনার সাইটে ক্যাশপ্লাগিন ব্যবহার করলে শুধুমাত্র প্রথম লোডের সময় সমস্যাটি হবে।
২.২. ম্যানুয়াল পদ্ধিতিতে ’Mixed Content Errors’ সমস্যার সমাধান।
আপনি যদি ওয়েবসাইটের টেকনিক্যাল জ্ঞান না রাখেন তাহলে এই পদ্ধতি ব্যবহার করবেন না। আপনার সাইটের কোনো ক্ষতির জন্য বিএনলাইট দায়বদ্ধ নয়।
ম্যানুয়ালে করলে সাইটের ট্রাবলসুটিং পদ্ধতিতে কাজ করবে। যেটা আপনার ওয়েবসাইটের জন্য খুবই কার্যকার ও গড় পারফরমেন্স বাড়াবে।
প্রথমত আপনাকে শিওর হতে হবে সেটিংসে https ব্যবহার করেছেন। সিম্পলি Settings >> General পেজে ভিজিট করুন সাইটের ইউআরএল-এ https না থাকলে https লিখুন।
এডিটিং শেষে সেইভ চেঞ্জস বাটনে ক্লিক করতে ভুলবেন না।
এরপর আপনাকে ডাটাবেসের আগের সকল http ইউআরএলকে https দ্বারা রিপ্লেস করতে হবে।
এটা আপনি খুব সহজে Better Search Replace প্লাগিন ইনস্টলের মাধ্যমে করতে পারেন।
প্লাগিনটি ইনস্টল হয়ে গেলে Tools » Better Search Replace পেজটি ভিজিট করুন। search for ফিল্ডে আপনার ওয়েবসাইটের ইউআরএল http এর সাথে দিন। এবং Replace with অপশনে আপনার ওয়েবসাইটের ইউআরএলটি https করে দিন। নিচে স্টেপ অনুযায়ী দেয়া।
এই প্লাগিনটি আপনার সাইটের যত http আছে সবকিছু https দ্বারা প্রতিস্থাপন করে দিবে।
যদি ’Mixed Content Errors’ এখনও দেখায় তবে বুঝবেন আপনার সাইটের থিমের কিছু CDN ও ফাইলে http দেয়া আছে। যেটি আপনাকে ম্যানুয়ালি প্রতিস্থাপন করে দিতে হবে। আপনি ব্রাউজারের ইন্সপেক্ট ইলিমেন্ট থেকে দেখে নিন কোন কোন ফাইলে http আছে সেগুলো https দ্বারা প্রতিস্থাপন করুন।

এই কাজটা করা বিগিনার লেভেলের কারোর জন্য করা কষ্টসাধ্য। বিগিনার হলে বিশেষজ্ঞ কারোর পরামর্শ গ্রহণ করুন।
যদি আপনি ফাইলটা একেসেস না পান তবে ডেভেলপারকে প্লাগিন বা থিমটা আপডেট করার অনুরোধ পাঠান। যদি অপডেট না করে তবে প্লাগিনটি ডিএকটিভ করুন ও অল্টারনেটিভ প্লাগিন খুজুন।
২.৩. SSL/HTTPS-এ মুভের পর অনেক রিডাইরেক্ট ইরোর আসলে।
ওয়ার্ডপ্রেস আপনাকে এডমিন এরিয়া https এর আওতায় অনার জন্য এলাউ করবে। তার জন্য wp-config.php ফাইলে নিচের কোডটা বসাতে হবে।
define('FORCE_SSL_ADMIN', true);
এতকিছু করার পরও ইরোর আসতে থাকলে আপনার কপাল খারাপ। তবে একটা শেষ সমাধান হচ্ছে নিচের কোড। এই কোড দেয়ার পরে এডিটিংয়ের আর কোনো জায়গা নেই।
define('FORCE_SSL_ADMIN', true);
if(strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)$_SERVER['HTTPS']='on';
এই কোডগুলো অবশ্যই PHP ট্যাগের মধ্যে দিতে হবে। তা না করলে কোনো কাজে দিবে না।
২.৪. ওয়ার্ডপ্রেসে HTTP থেকে HTTPS এ রিডাইরেক্ট।
ওয়ার্ডপ্রেস কখনও নিজে থেকে HTTP থেকে HTTPS এ রিডাইরেক্ট করবে না। আপনাকে একটু কষ্ট করে তাকে রিডাইরেক্ট করতে বাধ্য করতে হবে।
যদি আপনি Really Simple SSL প্লাগিন দিয়ে করেন তবে আপনাকে রিডাইরেক্ট করাতে হবে না। যা করার প্লাগিন নিজে করে নিবে।
ওয়ার্ডপ্রেসকে রিডাইরেক্ট করতে বাধ্য করবেন কিভাবে? খুব সহজও ট্রিকি, আপনাকে cPanel এ যেতে হবে Public_html এর ভিতর .htaccess নামের একটি ফাইল পাবেন। সেখানে নিচের কোডটি দিয়ে দিন।
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
আপনি .htacces এ গিয়ে লক্ষ করুন <IfModule mod_rewrite.c> </IfModule>
এই লেখাটি কোথায়। লেখাটি থাকলে অবশ্যই উপরের কোড দ্বারা রিপ্লেস করতে হবে। না হলে উপরের কোড কাজ করবে না। আর লেখাটি না দেখতে পেলে উপরের কোড .htaccess ফাইলে পেস্ট করে দিন।
আমরা আশা করি, টিউটেরিয়ালটি পুরোপুরি ফলো করলে আপনার সমস্যাটির সমাধন করতে পারবেন। যদি টিউটেরিলটি ফলো করতে সমস্যা হয় তবে আমাদের কমেন্টে জানান। আপনার কাছে দেখানো পদ্ধতিগুলোর চেয়ে ভালো পদ্ধতি থাকলে তাও জানাতে ভুলবেন না।