<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=Serverirakenduse_praktiline_juhend</id>
	<title>Serverirakenduse praktiline juhend - Redigeerimiste ajalugu</title>
	<link rel="self" type="application/atom+xml" href="http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=Serverirakenduse_praktiline_juhend"/>
	<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;action=history"/>
	<updated>2026-11-07T00:59:44Z</updated>
	<subtitle>Selle lehekülje redigeerimiste ajalugu</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=11514&amp;oldid=prev</id>
		<title>Irve: /* Esmatutvus Pythoniga CGI kontekstis */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=11514&amp;oldid=prev"/>
		<updated>2014-04-07T19:26:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Esmatutvus Pythoniga CGI kontekstis&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 7. aprill 2014, kell 21:26&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l94&quot;&gt;94. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;94. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Parandage failiõigused:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Parandage failiõigused:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  $chmod &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;ug&lt;/del&gt;+x test.py  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  $chmod +x test.py  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Proovige CGI skripti uuesti käivitada ja veenduge, et kõik töötab. Ka siin on oluline jälgida, et tudengite gruppi kuulujatel saaks antud faili nii lugeda kui kirjutada (st arvestage ka kataloogide pääsuõigustega).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Proovige CGI skripti uuesti käivitada ja veenduge, et kõik töötab. Ka siin on oluline jälgida, et tudengite gruppi kuulujatel saaks antud faili nii lugeda kui kirjutada (st arvestage ka kataloogide pääsuõigustega).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key lambdadb:diff:1.41:old-10087:rev-11514:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=10087&amp;oldid=prev</id>
		<title>Irve: /* Ligipääs */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=10087&amp;oldid=prev"/>
		<updated>2013-03-20T09:20:24Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Ligipääs&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 20. märts 2013, kell 11:20&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l29&quot;&gt;29. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;29. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Dijkstrasse sisselogimiseks on vaja end registreerida. Registreerimiseks piisas, kui esitasite oma esimese kodutöö õigeaegselt. Juhul kui te seda ei teinud, saatke kiri praktikumitunni juhendajale ja saate samuti ligi.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Dijkstrasse sisselogimiseks on vaja end registreerida. Registreerimiseks piisas, kui esitasite oma esimese kodutöö õigeaegselt. Juhul kui te seda ei teinud, saatke kiri praktikumitunni juhendajale ja saate samuti ligi.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Ühtlasi on tarvilik ligipääs Linuxi arvutitesse. See tähendab tudengikoodile ette kirjutatud t-tähega kasutajanimi t012345 kujul. Kel seda ei ole, saab selle vormistada Linuxiklassi administraatori juures.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Sisselogimine ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Sisselogimine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=10083&amp;oldid=prev</id>
		<title>Irve: /* Failide laadimine */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=10083&amp;oldid=prev"/>
		<updated>2013-03-18T16:46:26Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Failide laadimine&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 18. märts 2013, kell 18:46&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l37&quot;&gt;37. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;37. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Dijkstra aadress: dijkstra.cs.ttu.ee&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Dijkstra aadress: dijkstra.cs.ttu.ee&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Failide laadimine ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;!-- &lt;/ins&gt;== Failide laadimine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Failide laadimiseks sinna kasutage SFTP protokolli. Üks võimalikest programmidest, mis seda toetab on näiteks [http://filezilla-project.org/ Filezilla]. Klassi arvutitest saab ligi kui vajutate WIN+R ning kirjutate sinna:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Failide laadimiseks sinna kasutage SFTP protokolli. Üks võimalikest programmidest, mis seda toetab on näiteks [http://filezilla-project.org/ Filezilla]. Klassi arvutitest saab ligi kui vajutate WIN+R ning kirjutate sinna:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  \\CS&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  \\CS&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;--&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Keskkonna ettevalmistamine ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Keskkonna ettevalmistamine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=9996&amp;oldid=prev</id>
		<title>Irve – 13. veebruar 2013, kell 13:18</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=9996&amp;oldid=prev"/>
		<updated>2013-02-13T13:18:17Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 13. veebruar 2013, kell 15:18&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;1. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;1. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{UI}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Teise kodutöö praktiline juhend&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Teise kodutöö praktiline juhend&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=9948&amp;oldid=prev</id>
		<title>Irve: /* Sisselogimine */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=9948&amp;oldid=prev"/>
		<updated>2013-02-04T14:07:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Sisselogimine&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 4. veebruar 2013, kell 16:07&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l33&quot;&gt;33. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;33. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sisselogimiseks kasutatakse SSL ühendust ehk siis maakeeli programmi putty (Windows) või ssh (Linux). Tegemist on siis käsurealigipääsuga Linuxipõhisele serverile.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sisselogimiseks kasutatakse SSL ühendust ehk siis maakeeli programmi putty (Windows) või ssh (Linux). Tegemist on siis käsurealigipääsuga Linuxipõhisele serverile.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Teie kasutajanimi ja parool: TTÜ arvutiklasside kasutaja + parool&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Teie kasutajanimi ja parool: TTÜ &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Linuxi &lt;/ins&gt;arvutiklasside &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;(213-f,-g) &lt;/ins&gt;kasutaja + parool&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Dijkstra aadress: dijkstra.cs.ttu.ee&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Dijkstra aadress: dijkstra.cs.ttu.ee&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Failide laadimine ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Failide laadimine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=8640&amp;oldid=prev</id>
		<title>Irve: /* Failide laadimine */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=8640&amp;oldid=prev"/>
		<updated>2012-04-16T10:28:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Failide laadimine&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 16. aprill 2012, kell 12:28&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l39&quot;&gt;39. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;39. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Failide laadimine ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Failide laadimine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Failide laadimiseks sinna kasutage SFTP protokolli. Üks võimalikest programmidest, mis seda toetab on näiteks [http://filezilla-project.org/ Filezilla].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Failide laadimiseks sinna kasutage SFTP protokolli. Üks võimalikest programmidest, mis seda toetab on näiteks [http://filezilla-project.org/ Filezilla]. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Klassi arvutitest saab ligi kui vajutate WIN+R ning kirjutate sinna:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; \\CS&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Keskkonna ettevalmistamine ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Keskkonna ettevalmistamine ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=8275&amp;oldid=prev</id>
		<title>Irve – 26. märts 2012, kell 17:59</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=8275&amp;oldid=prev"/>
		<updated>2012-03-26T17:59:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 26. märts 2012, kell 19:59&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;1. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;1. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Teise kodutöö praktiline juhend&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Teise kodutöö praktiline juhend&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;!--&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;NB! Kõik siintoodud laborifailid leiate aadressilt:&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;http://dijkstra.cs.ttu.ee/~t001161/lab2.tar.gz&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;--&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Lühikokkuvõte ja lahendusvariandid =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Lühikokkuvõte ja lahendusvariandid =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=6743&amp;oldid=prev</id>
		<title>Irve: /* &lt;font color=&quot;red&quot;&gt;Uudised&lt;/font&gt; */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=6743&amp;oldid=prev"/>
		<updated>2012-03-26T17:58:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Uudised&amp;lt;/font&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 26. märts 2012, kell 19:58&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l5&quot;&gt;5. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;5. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;--&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;--&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;font color=&quot;red&quot;&amp;gt;Uudised&amp;lt;/font&amp;gt; =&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Dijkstrasse on lisatud ka olemasolevate ridade uuendamise skript uuenda.py. Kood ja seletus siin lehel allpool.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Lühikokkuvõte ja lahendusvariandid =&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Lühikokkuvõte ja lahendusvariandid =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=6742&amp;oldid=prev</id>
		<title>Irve – 26. märts 2012, kell 17:52</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Serverirakenduse_praktiline_juhend&amp;diff=6742&amp;oldid=prev"/>
		<updated>2012-03-26T17:52:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Uus lehekülg&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Teise kodutöö praktiline juhend&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
NB! Kõik siintoodud laborifailid leiate aadressilt:&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t001161/lab2.tar.gz&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;Uudised&amp;lt;/font&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Dijkstrasse on lisatud ka olemasolevate ridade uuendamise skript uuenda.py. Kood ja seletus siin lehel allpool.&lt;br /&gt;
&lt;br /&gt;
= Lühikokkuvõte ja lahendusvariandid =&lt;br /&gt;
&lt;br /&gt;
Teises laboratoorses töös on vaja kasutajaliides reaalselt tööle panna. Selleks vaja:&lt;br /&gt;
* Failid tõsta serverisse.&lt;br /&gt;
* Panna andmete salvestamine ja otsimine kasutajaliidese külge.&lt;br /&gt;
&lt;br /&gt;
Andmeid peab selles laboratoorses töös salvestama, otsima ja lugema [http://en.wikipedia.org/wiki/Ajax_(programming) ajaxi] ehk [http://en.wikipedia.org/wiki/XMLHttpRequest asünkroonse javascriptiga] [http://en.wikipedia.org/wiki/JSON json] formaadis. Teisisõnu, serveris olev programm ei ehita valmis terviklikku html lehte, vaid ainult data-stringi, mille formattimise html-ks teeb javascript. Datat kirjutab ja loeb samuti javascript. &lt;br /&gt;
&lt;br /&gt;
Sa võid soovi korral ise valida serveri, kuhu oma failid panna, samuti võid ise valida programmeerimiskeele, millega teha andmeid lugev ja välja andev rakendus, samuti võid ise valida anmdebaasisüsteemi ja schema.&lt;br /&gt;
&lt;br /&gt;
Samas on sul võimalus kasutada olemasolevat Dijkstra serverit ja Dijkstras selle praktikumi jaoks juba valmisehitatud rakendust ja andmebaasi: põhimõtteliselt võid täielikult vältida serveripoolse andmerakenduse ise-ehitamist. Vahepealse alternatiivina võid võtta nimetatud valmisehitatud rakenduse koodi ja schema ja teha temast Dijkstrasse oma variant, mida võid siis enda soovi kohaselt muuta või edasi arendada. &lt;br /&gt;
&lt;br /&gt;
Dijkstra kasutamisest ja valmisehitatud rakendusest on juttu siin lehel allpool.&lt;br /&gt;
&lt;br /&gt;
Ajaxi kasutamise kaks väikest näitefaili harjutustunnist:&lt;br /&gt;
&lt;br /&gt;
* [[minimaalne ajaxi näide]] mis töötab juhul, kui paned ta Dijkstra serverisse (muidu ei luba brauser Dijkstrast datat lugeda). [http://dijkstra.cs.ttu.ee/~tammet/ajax.html sama fail töötavana Dijkstras] &lt;br /&gt;
* [[veidi täiendatud ajaxi näide]] ja [http://dijkstra.cs.ttu.ee/~tammet/ajax2.html sama fail töötavana Dijkstras] (kirjuta otsiväljale t0 ja vajuta nuppu)&lt;br /&gt;
* [[väike eval-i kasutamise näide jsoni formaadi parsimise selgituseks]]&lt;br /&gt;
&lt;br /&gt;
= Dijkstra server = &lt;br /&gt;
&lt;br /&gt;
Kodutööde tarbeks on kasutusel server nimega dijkstra (see keeruline nimi on ühe tuntud arvutiteaduse teerajaja nimi ja keeruline seepärast, et see nimi teile paremini meelde jääks).&lt;br /&gt;
&lt;br /&gt;
== Ligipääs ==&lt;br /&gt;
&lt;br /&gt;
Dijkstrasse sisselogimiseks on vaja end registreerida. Registreerimiseks piisas, kui esitasite oma esimese kodutöö õigeaegselt. Juhul kui te seda ei teinud, saatke kiri praktikumitunni juhendajale ja saate samuti ligi.&lt;br /&gt;
&lt;br /&gt;
== Sisselogimine ==&lt;br /&gt;
&lt;br /&gt;
Sisselogimiseks kasutatakse SSL ühendust ehk siis maakeeli programmi putty (Windows) või ssh (Linux). Tegemist on siis käsurealigipääsuga Linuxipõhisele serverile.&lt;br /&gt;
&lt;br /&gt;
* Teie kasutajanimi ja parool: TTÜ arvutiklasside kasutaja + parool&lt;br /&gt;
* Dijkstra aadress: dijkstra.cs.ttu.ee&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Failide laadimine ==&lt;br /&gt;
&lt;br /&gt;
Failide laadimiseks sinna kasutage SFTP protokolli. Üks võimalikest programmidest, mis seda toetab on näiteks [http://filezilla-project.org/ Filezilla].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Keskkonna ettevalmistamine ==&lt;br /&gt;
&lt;br /&gt;
Kõik asjad, mis paigutate oma dijkstra kodukataloogi alamkataloogi &amp;quot;public_html&amp;quot;, on veebis nähtavad. See kataloog tuleb kõigepealt luua:&lt;br /&gt;
&lt;br /&gt;
 $mkdir public_html&lt;br /&gt;
&lt;br /&gt;
(&amp;quot;$&amp;quot; rea alguses tähistab nüüd ja edaspidi Linuxi käsurealt antavaid käske (enamus praeguse näite failioperatsioonidest peaks olema tehtavad ka SFTP graafilise liidese alt). Linuxi käsurea kasutamist tuleb uurida  omal käel. Käsurea saamiseks tuleks üle SSH ühenduse dijkstra käsureale logida (ssh või [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html putty] vms) )&lt;br /&gt;
&lt;br /&gt;
Kui kataloog on olemas, suunake oma brauser dijkstra aadressile, mille saate kui serveri lisate tudengikoodi serveri nimele (näiteks sedasi, aga asendage oma tudengikood ära):&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/&lt;br /&gt;
&lt;br /&gt;
Kui kõik töötab õigesti, peaksite nägema kataloogi nimistut, mis on tühi, sest te pole sinna faile pannud. Tekitage index.html nimeline fail ja kontrollige, et see hakkab endist tühja kataloogilistingut asendama. Rakenduse html-failid võite panna sinnasamasse public_html alla.&lt;br /&gt;
&lt;br /&gt;
== Failiõiguste probleemid ==&lt;br /&gt;
&lt;br /&gt;
Juhul, kui te kataloogi või oma index.html sisu ei näe, kontrollige, et nii teie kodukataloog kui public_html kuuluksid grupile &amp;quot;tudengid&amp;quot; ja et sellel grupil oleks nii lugemis-kui kataloogisisu vaatamise pääsuõigused. Samuti peab tudengigrupil olema võimalus lugeda kõiki veebi ülesminevaid faile.&lt;br /&gt;
&lt;br /&gt;
Kataloogile lugemis-ja nimekirjanäitamise õiguse andmine:&amp;lt;br/&amp;gt;&lt;br /&gt;
 $chmod  g+rx public_html&lt;br /&gt;
&lt;br /&gt;
Failile lugemisõiguse andmine:&amp;lt;br/&amp;gt;&lt;br /&gt;
 $chmod g+r index.html&lt;br /&gt;
&lt;br /&gt;
Nüüd, kus on kontrollitud, et veebis on staatilised HTML leheküljed üleval, saame põnevasse dünaamilisuse maailma sukelduda.&lt;br /&gt;
&lt;br /&gt;
= Põnev dünaamiline maailm =&lt;br /&gt;
&lt;br /&gt;
Praktikumi jaoks kasutate CGI skripti, mida saate enda rakenduse jaoks kohandada (aga ei pea tingimata). CGI skript on kirjutatud keeles [http://www.python.org/ Python] ning kasutab SQLite nimelist SQL rakendust.&lt;br /&gt;
&lt;br /&gt;
CGI rakendused elavad public_html alamkataloogis cgi-bin. (CGI rakendusi hoitakse traditsioonilselt staatilistest lehtedest eraldi, sest tegemist on ikkagi päris serveris käivituvate programmidega ja neil on sellest tulenevalt ka kõrgem turvarisk.)&lt;br /&gt;
&lt;br /&gt;
 $mkdir cgi-bin&lt;br /&gt;
&lt;br /&gt;
== Esmatutvus Pythoniga CGI kontekstis ==&lt;br /&gt;
&lt;br /&gt;
Looge cgi-kataloogi järgmise sisuga fail &amp;quot;test.py&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 print &amp;quot;Content-type: text/html&amp;quot;&lt;br /&gt;
 print&lt;br /&gt;
 print &amp;quot;&amp;amp;lt;html&amp;amp;gt;&amp;amp;lt;head&amp;gt;&amp;amp;lt;title&amp;amp;gt;test.py&amp;amp;lt;/title&amp;amp;gt;&amp;amp;lt;/head&amp;amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;amp;lt;h1&amp;amp;gt;Hello, World!&amp;amp;lt;/h1&amp;amp;gt;&amp;amp;lt;/body&amp;amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Esimene, trelliga rida ütleb, et käivitate pythoni interpretaatori ja ülejäänud read trükivad välja HTMLi vastuse. Content-type ja reavahetus on sealjuures väga kriitilised saata.&lt;br /&gt;
&lt;br /&gt;
Proovige brauseris selle faili aadress avada ja jälgige mis juhtub.&amp;lt;br&amp;gt;&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~tXXX/cgi-bin/test.py&lt;br /&gt;
Saate räige veateate, sest CGI skript ei ole käivitatav grupi õigustes (ega niisama).&lt;br /&gt;
&lt;br /&gt;
Parandage failiõigused:&lt;br /&gt;
 $chmod ug+x test.py &lt;br /&gt;
&lt;br /&gt;
Proovige CGI skripti uuesti käivitada ja veenduge, et kõik töötab. Ka siin on oluline jälgida, et tudengite gruppi kuulujatel saaks antud faili nii lugeda kui kirjutada (st arvestage ka kataloogide pääsuõigustega).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;NB!&amp;#039;&amp;#039;&amp;#039; Kui saate veateate &amp;quot;Internal Server Error&amp;quot; või midagi sarnast, siis võib juhtuda, et probleem on realõpumärkides: kui käsurea käsk &lt;br /&gt;
 $cat test.py&lt;br /&gt;
annab esimeseks reaks #!/usr/bin/python^M , siis kasutate windowsi faililõppe ja dijkstra proovib käivitada programmi nimega python^M . Selle parandamiseks salvestage fail UNIX faililõpuga.&lt;br /&gt;
&lt;br /&gt;
= Python + CGI = &lt;br /&gt;
&lt;br /&gt;
Selleks, et asju dünaamilisemaks teha, saate pythoni abil vastu võtta ka vormide infot. Selleks on tore imporditav moodul nimega cgi, mille funktsioonid aitavad vormiinfot söödavamal kujul sisse võtta. &lt;br /&gt;
&lt;br /&gt;
Looge fail test2.py:&lt;br /&gt;
&lt;br /&gt;
 #!/usr/bin/python&lt;br /&gt;
 import cgi&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;Content-type: text/html&amp;quot;&lt;br /&gt;
 print&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;&amp;amp;lt;html&amp;amp;gt;&amp;amp;lt;head&amp;amp;gt;&amp;amp;lt;title&amp;amp;gt;test2.py&amp;amp;lt;/title&amp;amp;gt;&amp;amp;lt;/head&amp;amp;gt;&amp;amp;lt;body&amp;amp;gt;&amp;amp;lt;h1&amp;amp;gt;Hello, World!&amp;amp;lt;/h1&amp;amp;gt;&amp;amp;lt;p&amp;amp;gt;Lisaparameeter oli &amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 formdata = cgi.FieldStorage()&lt;br /&gt;
 if formdata.has_key(&amp;quot;lisaparameeter&amp;quot;):&lt;br /&gt;
   print formdata[&amp;#039;lisaparameeter&amp;#039;].value&lt;br /&gt;
 else:&lt;br /&gt;
   print &amp;quot;puudu&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 print &amp;quot;.&amp;amp;lt;/p&amp;amp;gt;&amp;amp;lt;/body&amp;amp;gt;&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
Vaadake faili brauseris:&amp;lt;br&amp;gt;&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/test2.py&lt;br /&gt;
&lt;br /&gt;
Parandage faili õigused omaette kirudes, et seda unustati teile teisel korral öelda ja vaadake uuesti.&lt;br /&gt;
&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/test2.py&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/test2.py?lisaparameeter=olemas&lt;br /&gt;
&lt;br /&gt;
See on siis selleks, et saaksite aru, et mis toimub. Jätame Pythoni mõneks ajaks rahule.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Esmatutvus SQLite programmiga =&lt;br /&gt;
&lt;br /&gt;
SQLite on tore väike programm, mida saab kasutada failipõhiste andmebaaside loomiseks ja mis on üsna populaarne. Kasutavad seda päris mitmed rakendused nagu näiteks Skype või Firefox 3 bookmarkide jaoks.&lt;br /&gt;
&lt;br /&gt;
Olemuselt on kõik hästi lihtne: tuleb käivitada sqlite programm koos argumendiga, milleks on andmebaas.&lt;br /&gt;
&lt;br /&gt;
== Testandmebaas ==&lt;br /&gt;
&lt;br /&gt;
 $sqlite3 test.db&lt;br /&gt;
&lt;br /&gt;
Teeme lihtsa tabeli, lisame sinna andmed, näitame välja:&amp;lt;br/&amp;gt;&lt;br /&gt;
 sqlite&amp;gt; create table test(id integer primary key, data varchar(10));&lt;br /&gt;
 sqlite&amp;gt; insert into test(data) values (&amp;#039;karu&amp;#039;);&lt;br /&gt;
 sqlite&amp;gt; select * from test;&lt;br /&gt;
 1|karu&lt;br /&gt;
&lt;br /&gt;
Väljumiseks vajutage CTRL+D.&lt;br /&gt;
&lt;br /&gt;
Avastage, et teie programmikataloogi tekkis fail &amp;quot;test.db&amp;quot;. Avage andmebaas uuesti ja veenduge, et karu on ikka veel baasis. Võite testandmebaasi kustutada.&lt;br /&gt;
&lt;br /&gt;
== Näitefailid==&lt;br /&gt;
&lt;br /&gt;
Reaalselt Dijkstras töötava serverirakenduse (vt viited/selgitused allpool) lähtekood, mille järgi võid soovi korral teha oma kataloogi oma variandi:&lt;br /&gt;
&lt;br /&gt;
* [[schema.sql]]&lt;br /&gt;
* [[otsi.py]]  (selle faili lõpus on tulemuse vormistamine tehtud nii xmli kui jsoni jaoks, xml variant hetkel veidi bugine)&lt;br /&gt;
* [[salvesta.py]]&lt;br /&gt;
* [[uuenda.py]]&lt;br /&gt;
&lt;br /&gt;
== Tegeliku andmebaasi tegemine ==&lt;br /&gt;
&lt;br /&gt;
Praktikumide näitefailide all on schema.sql, pange see cgi-bin kataloogi ning looge uus andmebaas:&lt;br /&gt;
&lt;br /&gt;
 $sqlite3 data.db &amp;lt; schema.sql&lt;br /&gt;
&lt;br /&gt;
See tekitab andmebaasi data.db ning suunab sinna schema.sql faili read, mis ükshaaval käivituvad ning seeläbi andmebaasiskeemi loovad. Tutvuge ka schema.sql sisuga.&lt;br /&gt;
&lt;br /&gt;
Kuna schema.sql on hästi universaalne, võite üleliigse kustutada ning ja skeemi enda äranägemise järgi kohendada. Samas ärge unustage, et see tähendab, et peate kohendama ka ülejäänud .py faile, mis võivad skeemidelt üht-teist eeldada.&lt;br /&gt;
&lt;br /&gt;
Andmete lisamiseks sqlite3 abil tehke nagu varem:&lt;br /&gt;
&lt;br /&gt;
 $sqlite3 data.db&lt;br /&gt;
 sqlite&amp;gt;insert into t0(salvestaja, f0, f1) values (&amp;#039;i@e.ee&amp;#039;, &amp;#039;Riho&amp;#039;, &amp;#039;Votolovootolovolovo&amp;#039;);&lt;br /&gt;
 sqlite&amp;gt;select * from t0;&lt;br /&gt;
&lt;br /&gt;
= Python + CGI + SQLite = &lt;br /&gt;
&lt;br /&gt;
Kui eelnevad näited töötasid puhtalt SQLite&amp;#039;i kasutades, vaatame nüüd kuidas kogu eelnev koos töötama hakkaks.&lt;br /&gt;
&lt;br /&gt;
Teile on näitefailides antud kolm faili: otsi.py, mis vaikimisi näitab nõutud andmebaaside sisu, salvesta.py, mis võimaldab vormiparameetreid andmebaasi salvestada, ning uuenda.py, mis võimaldab baasis juba olemasoleva rea väljade sisu muuta.&lt;br /&gt;
&lt;br /&gt;
Järgmistes näidetes eeldatakse, et dijkstra kasutaja, kus failid on, on t0XXX. Reaalselt sellist kasutajat dijkstras ei ole ja näiteurlid otse ei tööta.&lt;br /&gt;
&lt;br /&gt;
== otsi.py ==&lt;br /&gt;
&lt;br /&gt;
Fail &amp;quot;otsi.py&amp;quot; otsib etteantud parameetritele vastavaid väljasid ja väljastab neid kas xml või json formaadis, sorteerib ning võimaldab päringutulemuste piiramist.&lt;br /&gt;
&lt;br /&gt;
Lihtsaim päring on parameetriteta päring, mis tagastab kõik mingi konkreetse tabeli väljad. Ette tuleb kindlasti anda tabeli nimi (t0,t1,...,t4) ja salvestaja nimi, väljad f0,f1,...,f19 on tabeli veerud. Otsitakse ridu, millel on etteantud väärtustega veerud.&lt;br /&gt;
&lt;br /&gt;
Mõne andmebaasivälja sisu järgi otsimine:&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/otsi.py?salvestaja=Riho&amp;amp;table=t0&amp;amp;f1=kala&amp;amp;f2=karu&lt;br /&gt;
&lt;br /&gt;
Otsingule saab anda ka lisaparameetreid:&lt;br /&gt;
* order: välja nimi, mille järgi sorteerida (f0, f1 jne)&lt;br /&gt;
* direction (asc või desc)&lt;br /&gt;
* fromrow: rea number, millest alates datat antakse&lt;br /&gt;
* getrows: mitu rida datat antakse&lt;br /&gt;
&lt;br /&gt;
Otsingu sorteerimise ja fromrow ja getrow näide:&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/otsi.py?salvestaja=Riho&amp;amp;table=t0&amp;amp;f1=kala&amp;amp;f2=karu&amp;amp;order=f1&amp;amp;direction=desc&amp;amp;fromrow=10&amp;amp;getrows=3&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
XML formaat:&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/otsi.py?salvestaja=Riho&amp;amp;table=t0&amp;amp;f1=kala&amp;amp;f2=karu&amp;amp;order=t1&amp;amp;direction=desc&amp;amp;format=xml&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== salvesta.py == &lt;br /&gt;
&lt;br /&gt;
Salvesta.py salvestab määratud tabelisse andmeid. Kindlasti tuleb ette anda kohustuslikud väljad salvestaja ja table. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;NB!&amp;lt;/font&amp;gt; salvestaja väärtuseks pane oma nimi või matriklinumber: mingi väike string, mis oleks teiste tudengite omast erinev. Siis saad otsides sama salvestaja väärtust kasutades ainult enda data, mitte teiste tudengite data.&lt;br /&gt;
&lt;br /&gt;
Välja &amp;quot;id&amp;quot; ei tule sisestada, selle täidab andmebaas automaatselt. &lt;br /&gt;
&lt;br /&gt;
Eduka salvestamise puhul tagastub 1, ebaeduka salvestamise või andmebaasivea korral 0.&lt;br /&gt;
&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/salvesta.py?salvestaja=i@e.ee&amp;amp;table=t0&amp;amp;f0=kala&amp;amp;f1=karu&lt;br /&gt;
&lt;br /&gt;
NB! Tähtis! Kui soovite üle CGI skripti faili muuta peab lisaks lugemisõigusele andma ka kirjutusõiguse. Kirjutamisõigus peab olema nii andmebaasifaili kui ka cgi-bin kataloogil.&lt;br /&gt;
&lt;br /&gt;
 $chmod g+w data.db&lt;br /&gt;
 $chmod g+w .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== uuenda.py == &lt;br /&gt;
&lt;br /&gt;
uuenda.py uuendab korraga ühte tabelis olemasolevat etteantud rida. Kindlasti tuleb ette anda kohustuslikud väljad salvestaja, table ja id. &lt;br /&gt;
&lt;br /&gt;
Välja id väärtus peab olema varem leitud. otsi.py annab iga rea jaoks mh ka id välja väärtuse.&lt;br /&gt;
&lt;br /&gt;
Eduka salvestamise puhul tagastub 1, ebaeduka salvestamise või andmebaasivea korral 0.&lt;br /&gt;
&lt;br /&gt;
http://dijkstra.cs.ttu.ee/~t0XXX/cgi-bin/uuenda.py?salvestaja=i@e.ee&amp;amp;table=t0&amp;amp;id=12&amp;amp;f0=koer&amp;amp;f1=kass&lt;br /&gt;
&lt;br /&gt;
uuenda.py on niisiis üpris sarnane salvesta.py-le, erinevus ainult selles, et id väli tuleb ise ette anda ja uue rea lisamise asemel uuendatakse id-ga määratud rea väljade väärtusi.&lt;/div&gt;</summary>
		<author><name>Irve</name></author>
	</entry>
</feed>