මොකක්ද මේ web server එකක් කියන්නේ ?
Web Server එකක් කියන්නෙ URL හදුනාගෙන ඊට අදාල තොරතුරු පරිශීලකයාට(user) ලබා දෙන software ඒකක්. උදාහරනයක් වශයෙන් https://gigara.info website URL එක web browser තුල අප type කල විට web browser විසින් Web Server එකට HTTP request එකක් යවනු ලබනවා. එම request එක Web Sever ඒකට ලැබුනු පසු server ඒක විසින් අදාල contents(images/ web pages), web browser එකට එවනු ලබනවා.
මේ පිලිබද වැඩිදුර තොරතුරු මම වෙනත් පොස්ට් එකකින් කියන්නම්.
අද අපි බලමු Python වලින් web server ඒකක් හදාගන්නේ කොහොමද කියලා.
මුලින්ම අපි Flask module එක install කරගන්න ඕන. පහත command එක මගින් Flask install කරගන්න පුලුවන්.
pip install flask

Flask සාර්ථකව install වුනාට පස්සේ දැන් අපි බලමු code එක ලියන්නේ කොහොමද කියලා.
from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return "Hello Giga" if __name__ == "__main__": app.run(port=80)
මේ code එක run කරාට පස්සේ අපිට බලාගන්න පුළුවන් web server එක run වෙන හැටි.

පහත ආකාරයට code එක වෙනස් කිරීමෙන් අපිට පුළුවන් විවිධ URL සදහා වෙනස් වූ දත්ත ලබා දෙන්න.
from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return "Hello Giga" @app.route('/name') def name(): return "Gigara" @app.route('/year') def year(): return "2019" if __name__ == "__main__": app.run(port=80)
දැන් අපි බලමු html වෙබ් page එකක් පෙන්වන්නේ කොහොමද කියලා. ඒ සදහා මුලින්ම අපි අපේ html pages, templates කියන folder එකට add කරගත යුතුයි.

දැන් අපි template folder එක තුල තිබෙන index.html file එකට පහත code එක Add කරමු.
<html> <body> <center><h1>Our new website</h1></center> <hr> </body> </html>
දැන් අපි render_template function එක import කර ගත යුතුයි. ඒ සදහා පලවෙනි පේලියේ තිබෙන code එක පහත ආකාරයට වෙනස් කල යුතුයි.
from flask import Flask, render_template
දැන් අපිට පුලුවන් import කරගත්තු function එක භාවිතයෙන් html page එක web browser එකට යවන්න.
උදා.
@app.route('/') def index(): return render_template('index.html')

Full code
from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return render_template('index.html') @app.route('/name') def name(): return "Gigara" @app.route('/year') def year(): return "2019" if __name__ == "__main__": app.run(port=80)