<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>On Feb 26, 2012, at 10:55 AM, Dan Filimon wrote:</div></div></span></div></span></span></div><div><br class="Apple-interchange-newline"><blockquote type="cite"><div>2012/2/26 Alex Morega <<a href="mailto:alex@grep.ro">alex@grep.ro</a>>:<br><blockquote type="cite">Salut,<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">La ultima parte din cursul 1 am încercat să implementăm un server HTTP care să servească fișiere statice. N-am ajuns foarte departe, dar câțiva studenți m-au rugat să le dau specificația ca un fel de temă. Textul de mai jos sună OK? Îmi dau seama că ei nu știu Ruby, și toată treaba s-ar putea să fie prematură, pentru că vor învăța ceva despre Ruby la cursul 3, așa că o să zic destul de clar că e o temă foarte opțională :)<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">-- Alex<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">==================================<br></blockquote><blockquote type="cite">Scrie un program Ruby care servește fișiere statice prin HTTP, cu funcționalitate asemănătoare serverului nginx (fișierele de la adresa <a href="http://grep.ro/quickpub/webdev-http/">http://grep.ro/quickpub/webdev-http/</a> sunt servite de către nginx):<br></blockquote><blockquote type="cite"> * Dacă path-ul cerut de client reprezintă un fișier, va fi trimis conținutul fișierului ca response.<br></blockquote><blockquote type="cite"> * Dacă path-ul cerut este un director, response-ul va conține lista cu numele de fișiere, unul pe linie.<br></blockquote><blockquote type="cite">==================================<br></blockquote><br>Dacă path-ul este un director, ar putea ca response-ul să conțină<br>lista cu linkuri către numele fișierelor și o intrare pentru ".."?<br>Adică să poți naviga prin directoarele de pe server așa? :)<br><br>Legat de opționalitate, cred c-ar fi okay ca o temă _opțională_, dar<br>ar fi bine să existe un schelet de cod (+ să fie puse în comentarii<br>funcțiile de care au nevoie pentru implementare).<br>_______________________________________________<br>webdev mailing list<br><a href="mailto:webdev@lists.rosedu.org">webdev@lists.rosedu.org</a><br>http://lists.rosedu.org/listinfo/webdev<br></div></blockquote></div><div><br></div><div>Da, si eu propun sa existe un fel de schelet de cod, apoi un comentariu </div><div>#TODO1: Citeste request-ul de la user</div><div>#TODO2: Daca e fisier, afiseaza continutul</div><div># TODO3: Daca e director, afiseaza lista cu numele de fisiere, unul pe linie</div><div><br></div><div>Dealtfel, am trebui sa le trimitem cateva link-uri din care sa mai citeasca daca mai doresc sa invete extra:</div><div><br></div><div>Ce e un server web:</div><div>- <a href="http://en.wikipedia.org/wiki/Web_server">http://en.wikipedia.org/wiki/Web_server</a></div><div>- <a href="http://www.howstuffworks.com/web-server.htm">http://www.howstuffworks.com/web-server.htm</a></div><div>- <a href="http://en.wikipedia.org/wiki/Nginx">http://en.wikipedia.org/wiki/Nginx</a></div><div>- <a href="http://en.wikipedia.org/wiki/Apache_HTTP_Server">http://en.wikipedia.org/wiki/Apache_HTTP_Server</a></div><div><br></div><div>HTTP:</div><div><a href="http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol">http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol</a></div><div><br></div><div>Ruby:</div><div>- un tutorial foarte interesant numit "Ruby in 20 minutes", care ii va ajuta sa inteleaga lucruri basic despre limbaj: <a href="http://www.ruby-lang.org/en/documentation/quickstart/">http://www.ruby-lang.org/en/documentation/quickstart/</a></div><div>- <a href="http://www.troubleshooters.com/codecorn/ruby/basictutorial.htm">http://www.troubleshooters.com/codecorn/ruby/basictutorial.htm</a></div><div>- <a href="http://rubylearning.com/">http://rubylearning.com/</a></div><div><br></div><div>Dealtfel, propun ca atunci cand le dam tema, sa le trimitem si formularul de feedback, ma ocup de el in dupa-masa asta.</div><br><div><div><span class="Apple-style-span" style="color: rgb(136, 136, 136); ">Gabriel Voicu</span><span class="Apple-style-span" style="color: rgb(136, 136, 136); "><br></span><span class="Apple-style-span" style="color: rgb(136, 136, 136); ">E-mail:</span><span class="Apple-style-span" style="color: rgb(136, 136, 136); "> </span><span class="Apple-style-span" style="color: rgb(136, 136, 136); "><a href="mailto:voicu_gabriel@ymail.com" target="_blank">voicu_gabriel@ymail.com</a></span><span class="Apple-style-span" style="color: rgb(136, 136, 136); "><br></span><span class="Apple-style-span" style="color: rgb(136, 136, 136); ">Skype: voicu_gabi</span><span class="Apple-style-span" style="color: rgb(136, 136, 136); "><br></span><span class="Apple-style-span" style="color: rgb(136, 136, 136); ">Phone: 0726283665</span></div></div><div><span class="Apple-style-span" style="color: rgb(136, 136, 136); "><br></span></div></body></html>