"হাই, অ্যামিগো!"
"হ্যালো, বিলাবো! আজ আমরা কি করছি?"
"আজ আমি আপনাকে বলতে যাচ্ছি কিভাবে একটি টমক্যাট ওয়েব সার্ভার ইনস্টল করতে হয়।"

"একটি ওয়েব সার্ভার কি? একটি নিয়মিত সার্ভার কি?"
"ক্লায়েন্ট-সার্ভার সম্পর্ক নামক প্রোগ্রামগুলির জন্য ইন্টারঅ্যাক্ট করার একটি উপায় রয়েছে। সার্ভারটি ক্লায়েন্টের অনুরোধগুলি পরিবেশন করে। ক্লায়েন্ট সার্ভারে তাদের অনুরোধ পাঠায় এবং সার্ভার তাদের পূরণ করে এবং ফলাফল প্রদান করে।"
"কল্পনা করুন একজন বিক্রয়কর্মী একটি দোকানে গ্রাহকদের সেবা দিচ্ছেন৷ এই ক্ষেত্রে, বিক্রয়কর্মী প্রকৃতপক্ষে সার্ভার, দোকানের গ্রাহকরা হলেন ক্লায়েন্ট, এবং বিক্রয়কর্মী দ্বারা বিক্রি করা পণ্য হল অনুরোধ প্রক্রিয়াকরণের ফলাফল (সার্ভারের কাজের ফলাফল) "
"অন্য কথায়, একটি সার্ভার হল সেই ব্যক্তি যে একজন গ্রাহকের অনুরোধ/অর্ডার/প্রয়োজন, তাই না?"
"হ্যাঁ."
"ঠিক আছে, তাহলে একটি ওয়েব সার্ভার কি?"
"একটি ওয়েব সার্ভার হল একটি প্রোগ্রাম যা ব্যবহারকারীদের ব্রাউজার থেকে পৃষ্ঠার অনুরোধগুলি পরিবেশন করে।"
"যখন আপনি একটি ব্রাউজারে একটি নির্দিষ্ট URL প্রবেশ করেন, তখন অনুরোধটি সার্ভারে যায়, সার্ভার অনুরোধটি প্রক্রিয়া করে, একটি ওয়েব পৃষ্ঠা তৈরি করে এবং এটি ব্রাউজারে ফেরত পাঠায়।"

"ওয়েব সার্ভার হল সার্ভার। ব্রাউজার হল ক্লায়েন্ট। URL হল অনুরোধ। ওয়েবপৃষ্ঠা হল অনুরোধ প্রক্রিয়াকরণের ফলাফল।"
"আহ। পরিস্থিতি ধীরে ধীরে পরিষ্কার হচ্ছে। অন্য কথায়, একটি ওয়েব সার্ভার হল একটি প্রোগ্রাম(?) যা ব্রাউজারগুলির জন্য পৃষ্ঠা তৈরি করে। তাই না?"
"হ্যাঁ."
"আসুন একটি সাধারণ URL নেওয়া যাক:"
ইউআরএল পার্সিং |
---|
http://codegym.cc/alpha/api/contacts ? _ _ _ _ userid=13&filter=none&page=3 |
একটি URL এর অংশগুলির বর্ণনা |
codegym.cc হল একটি ডোমেইন নাম যা ইন্টারনেটে একটি কম্পিউটারের অনন্য নাম (ঠিকানা) |
http হল ক্লায়েন্ট-সার্ভার যোগাযোগের প্রোটোকল |
alpha/api/contacts হল ওয়েব সার্ভারের অনুরোধ বা সার্ভারে একটি ওয়েবপৃষ্ঠার অনুরোধ |
userid=13 &filter=none & page=3 হল ওয়েব সার্ভারের অনুরোধ বা সার্ভারে একটি ওয়েবপৃষ্ঠার অনুরোধ |
"এটি পরীক্ষা করে দেখুন। আমরা একটি কম্পিউটার পাই এবং এটি ইন্টারনেটের সাথে সংযুক্ত করি।"
"তারপর আমরা এটির জন্য একটি ডোমেন নাম কিনি।"
"তারপর আমরা এটিতে একটি ওয়েব সার্ভার চালাই।"
"এখন আপনি যেকোন ব্রাউজার থেকে এই ওয়েব সার্ভারে এর ডোমেন নামের সাথে একটি URL লিখে অনুরোধ পাঠাতে পারেন।"
"আমি ভাবছি, আমি বুঝতে পেরেছি."
"আমি সবকিছু একটু পরিষ্কার করার জন্য একটি উপমা শেয়ার করব।"
ইংরেজি / জেসন / আমাকে ফোল্ডার পাস ? সংখ্যা=13 |
ইন্টারনেটে একটি কম্পিউটারের অনন্য নাম জেসন |
ইংরেজি হল ক্লায়েন্ট-সার্ভার যোগাযোগের প্রোটোকল |
পাস মি ফোল্ডার হল ওয়েব সার্ভারের অনুরোধ, বা সার্ভারে একটি ওয়েবপৃষ্ঠার অনুরোধ |
number=13 অনুরোধ পরামিতি সহ একটি স্ট্রিং |
"আহ। এটা সত্যিই পরিষ্কার। ধন্যবাদ।"
"এটাই সব নয়। কখনও কখনও একাধিক ওয়েব সার্ভার একক কম্পিউটারে চলে। তাদের আলাদা করার জন্য, তাদের নম্বর বরাদ্দ করা হয়।"
"একটি ডোমেনকে একটি বিল্ডিং হিসাবে ভাবুন৷ যদি একটি পরিবার বিল্ডিংটিতে থাকে, তবে আপনি "5 তৃতীয় অ্যান্টি-মঙ্গল বিদ্রোহ সেন্ট" এর মতো কিছু লিখবেন তাদের একটি চিঠি পাঠানোর সময়।"
"এখন কল্পনা করুন যে ভবনটিতে বেশ কয়েকটি পরিবার বাস করে।"
"একটি অ্যাপার্টমেন্ট বিল্ডিং মত?"
"ঠিক! এটা খুবই অনুরূপ। সাদৃশ্যের জন্য ধন্যবাদ।"
"বিল্ডিংয়ের ভিতরে, অনেক অ্যাপার্টমেন্ট আছে। কিছু অ্যাপার্টমেন্ট খালি আছে। কিছু ওয়েব সার্ভার দ্বারা দখল করা হয়েছে। এবং যখন আপনি একটি ওয়েব সার্ভারে একটি অনুরোধ পাঠান, আপনাকে অবশ্যই অ্যাপার্টমেন্ট নম্বরও উল্লেখ করতে হবে। একটি URL-এ, এই নম্বরটিকে বলা হয় একটি বন্দর।"
"উদাহরণ স্বরূপ:"
http :// codegym.cc:80 / alpha/api/contacts ? userid=13&filter=none&page=3 |
http :// codegym.cc:8080 / alpha/api/contacts ? userid=13&filter=none&page=3 |
http :// codegym.cc:443 / alpha/api/contacts ? userid=13&filter=none&page=3 |
"বাস্তবে, সব সার্ভারই অ্যাপার্টমেন্ট বিল্ডিং। এবং প্রতিটিতে ৬৫,০০০ অ্যাপার্টমেন্ট (বন্দর) আছে।"
"কেন 65,000?"
"দুটি বাইট একটি পোর্ট নম্বর নির্দেশ করতে ব্যবহৃত হয়। 65536 হল বৃহত্তম পূর্ণসংখ্যার মান যা দুই বাইট দীর্ঘ।"
"প্রতিটি প্রোটোকলের (http, https, ftp, ...) নিজস্ব ডিফল্ট পোর্ট আছে।"
"যদি অ্যাপার্টমেন্ট নম্বর (পোর্ট) নির্দিষ্ট করা না থাকে, প্রোটোকলের ডিফল্ট পোর্ট ব্যবহার করা হয়।"
"যদি প্রোটোকলটি http হয়, তাহলে পোর্টটি 80। প্রোটোকলটি যদি https হয়, তাহলে পোর্টটি 443, ইত্যাদি।"
"অন্য কথায়, নিম্নলিখিত এন্ট্রিগুলি সমতুল্য:"
URL | এটা আসলে কি মানে |
---|---|
http://www.mail.google.com _ | http://www.mail.google.com : 80 |
http://codegym.cc _ | http://codegym.cc : 80 |
http://codegym.cc/alpha _ | http://codegym.cc : 80 /alpha |
https://codegym.cc/api?x _ | https://codegym.cc : 443 /api?x |
"যদি পোর্ট 444 হয়, কিন্তু প্রোটোকলটি https হয়?"
"আমি আপনাকে আগেই বলেছি। যদি পোর্টটি নির্দিষ্ট করা না থাকে, তবে এটি প্রোটোকলের উপর ভিত্তি করে নির্ধারিত হয়। যদি এটি নির্দিষ্ট করা হয়, তাহলে নির্দিষ্ট পোর্টটি ব্যবহার করা হয়।"
"আমি দেখি."
"আপনি জানেন কিভাবে মানুষ কখনও কখনও নামের পরিবর্তে সর্বনাম ব্যবহার করে: আমি, আপনি, তিনি, …?"
"হ্যাঁ, কিন্তু মানুষ জন্মগতভাবে অদ্ভুত। আমি সেদিকে মনোযোগ না দেওয়ার চেষ্টা করি।"
"আচ্ছা, কম্পিউটারেরও একটি ডোমেন নাম আছে যার অর্থ 'আমি'। এটি 'লোকালহোস্ট'।"
"আপনি আপনার ব্রাউজারে লোকালহোস্ট লিখলে , ব্রাউজারটি আপনার কম্পিউটার অ্যাক্সেস করবে।"
"এবং যদি আপনার একটি ওয়েব সার্ভার ইনস্টল করা থাকে, তাহলে এটি ব্রাউজারে একটি ওয়েবপৃষ্ঠা পাঠাবে।"
"কুল! আমি একটি ওয়েব সার্ভার শুরু করতে এবং ব্রাউজারে পৃষ্ঠা খুলতে চাই।"
"কিভাবে করতে হয় বলুন, বিলাবো। প্লিজ!!! তুমি আমার বন্ধু, তাই না?"
"বিলাবো বন্ধুর জন্য কিছু করতে পারে।"
"শোন."
ধাপ 1 |
---|
জাভা ডেভেলপমেন্ট কিট (JDK) ইনস্টল করুন |
ফলাফল |
JDK ইনস্টল করা আছে |
"বিলাবো, আমি একজন লেভেল 30 প্রোগ্রামার। আমি অনেক আগেই JDK ইন্সটল করেছি!"
"দারুণ, তাহলে চলুন চালিয়ে যাওয়া যাক।"
ধাপ ২ |
---|
টমক্যাট 9 ডাউনলোড করুন |
ইঙ্গিত 1: |
গুগল ব্যবহার করুন |
ইঙ্গিত 2: |
অফিসিয়াল Apache Tomcat ওয়েবপেজ |
ইঙ্গিত 3 (উইন্ডোজ ব্যবহারকারীদের জন্য সরাসরি লিঙ্ক): |
Apache Tomcat ডাউনলোড করুন |
"বুঝেছি."
"দারুণ।"
ধাপ 3 |
---|
Tomcat 9 ইনস্টল করুন ডিফল্ট ইনস্টলেশন সেটিংস ব্যবহার করুন। কিছু পরিবর্তন করবেন না. |
পর্দা 3 |

পর্দা 4 |
---|

"এখানে আপনি ওয়েব সার্ভারের নাম এবং পোর্ট সেট করতে পারেন। ডিফল্ট হল পোর্ট 8080।
কিছু পরিবর্তন করবেন না। সবকিছু যেমন আছে তেমনই রেখে দিন।"
পর্দা 5 |
---|

ফোল্ডারটি উল্লেখ করুন যেখানে JDK ইনস্টল করা আছে
পর্দা 6 |
---|

পর্দা 7 |
---|

"হ্যাঁ। আমি এইমাত্র নেক্সট ক্লিক করেছি এবং এটাই।"
"দারুণ। এখন আপনার কাছে একটি Tomcat 9 ওয়েব সার্ভার ইনস্টল এবং চলমান আছে, পোর্ট 8080-এ অনুরোধ শোনা যাচ্ছে। এটি সফ্টওয়্যার বিকাশের জন্য আদর্শ পোর্ট।"
"ঠিক আছে, তাই আমার কাছে টমক্যাট আছে, কিন্তু আমি কীভাবে এটির জন্য একটি প্রোগ্রাম লিখতে পারি?"
"আমি চাই এটি আকর্ষণীয় কিছু তৈরি করুক - কিছু ধরণের দুর্দান্ত ওয়েবপৃষ্ঠা।"
"ঠিক আছে, আমি আপনাকে একটি ছোট বিরতির পরে এটি কিভাবে করতে হবে তা বলব।"
GO TO FULL VERSION