Cerc Vicios – Portofoliu de lucrări

2434

Ai nevoie de un portofoliu pentru a atrage clienţi şi ai nevoie de clienţi pentru a-ţi creea un portofoliu. Un cerc vicios ce pare că nu se mai termină dar din care cu siguranţă va trebui să ieşi.
Oare cum poţi face să rezolvi ambele situaţii? Să gaseşti clienţi care să te plătească şi să acumulezi experienţă în acelaşi timp, experienţă pe care să o afişezi ca portofoliu?

Dacă vrei să lucrezi singur ca freelancer sau dacă doreşti să te angajezi te poate ajuta foarte mult un portofoliu însă nu vei scăpa de proba de foc care este proba de lucru. Se caută oameni cu experienţă însă este nevoie ca această experienţă sa fie dovedită.
De la început trebuie să te gândești că îți trebuie un nou mod de abordare. Îți trebuie un mod de abordare intrinsec, centrat pe tine, în care să analizezi ceea ce știi să faci și ceea ce ți-ar place să faci. Ceea ce știi te faci te ajută să te formezi iar ceea ce îți place să faci te ajută să îți dai seama ce anume dorești să înveți. Poți ajunge la concluzia că sunt lucruri diferite și că trebuie să decizi la ce anume acorzi prioritate. Oricum ar fi trebuie să îți dai seama că tu nu ești o persoană care iși caută de lucru ci ești un profesionist care are ceva de arătat celor interesați de serviciile tale.

De ce sa facem trecerea de la HTTP la HTTPS

HTTP-vs-HTTPS

HTTPS ca indice de clasificare si trecerea de la HTTP la HTTPS

Securitatea este o prioritate pentru Google și știm asta cu toții. Incercăm să asigurăm clienții de securitate când vine vorba de website-urile lor și investim foarte mult în asigurarea faptului că serviciile noastre utilizează o securitate la cel mai înalt nivel, precum criptarea puternică HTTPS în mod implicit.
Google a apelat la “HTTPS peste tot” pe web de ceva timp iar tu ești puțin în urmă. De asemenea, ai văzut tot mai mulți webmasteri care adoptă HTTPS (cunoscut și ca HTTP peste TLS sau Security Layer Security) pe site-ul lor, ceea ce este încurajator pentru securitate, iar tu ai inca HTTP ca protocol de bază.
Dacă ai în administrare un site este posibil să ai nevoie doar de câteva mici setări pentru ca site-ul tău sa fie accesibil doar pe HTTPS.

Diferența dintre HTTP și HTTPS

Există o mulțime de criterii care diferențiază HTTP de HTTPS. În opinia mea, cele trei enumerate mai jos sunt diferențele majore dintre cele două.

Schema de adrese URL: Adresele HTTPS încep cu https:// și utilizează portul 443 în mod prestabilit, în timp ce adresele URL HTTP încep cu http:// și utilizează portul 80 în mod implicit.
Securitate: HTTP este nesigur și este supus atacurilor de interceptare, ceea ce poate permite atacatorilor accesul la informații sensibile ale unui site web, în timp ce HTTPS este proiectat să reziste împotriva acestor atacuri.

Trecerea de la Apache la NGINX – configurare Nginx

Apache-vs-Nginx

Spuneam mai devreme care ar fi primii pași pentru Trecerea de la Apache la Nginx. Mai departe mă voi ocupa de configurarea Nginx.

Am avea apoi de configurat Nginx să functioneze cu setările ce erau folosite de Apache. Trebuiesc verificate toate declarațiile de servere Apache și pentru fiecare ar trebui să adăugăm un bloc de instrucțiuni specifice pentru Nginx. Fișierele de configurare pentru serverele de tip Apache se află în structura de fișiere a serverului pe calea:

/etc/apache2/sites-available/

Similar Nginx își ține fișierele de configurare în structura de fișiere pe calea:

/etc/nginx/sites-available/

Este binecunoscut faptul ca în sistemele de operare de tip Linux fișierele de configurare sunt păstrate în folderul /etc . Ele pot fi editate oricând, însă pentru a fi luate in considerare noile setări, serviciile ce folosesc acele fișiere de configurare trebuiesc repornite. Repornirea serviciilor eu o fac folosind comenzi de resetare ce implică init.d. Există și alte modalități în funcție de aroma de linux instalată pe server. Toate operațiunile în folderul /etc se fac folosind un cont de root sau un cont ce are permisuni de a face asta. Așa se face că pentru a reporni Apache eu folosesc comanda (ca root):

/etc/init.d/apache2 restart

iar pentru a reporni serverul Nginx folosesc comanda:

/etc/init.d/nginx restart.

Comenzile pot fi puțin diversificate în sensul că pot opri, pot porni și pot afla statusul unui anumit serviciu. De exemplu pentru Apache comenzile ar fi:

/etc/init.d/apache2 restart – Repornesc serverul Apache
/etc/init.d/apache2 stop – Opresc serverul Apache
/etc/init.d/apache2 start – Pornesc serverul Apache
/etc/init.d/apache2 status – Aflu dacă serverul funcționează și care este statusul lui

Un fișier de configurare pentru Apache arată similar cu acesta:

 

<VirtualHost *:80>
        ServerAdmin webmaster@your_site.com
        ServerName your_site.com
        ServerAlias www.your_site.com
        DocumentRoot /var/www
        <Directory />
             Options FollowSymLinks
             AllowOverride None
        </Directory>
        <Directory /var/www/>
             Options Indexes FollowSymLinks MultiViews
              AllowOverride None
              Order allow,deny
              allow from all
        </Directory>
        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
             AllowOverride None 
             Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
              Order allow,deny
              Allow from all
        </Directory>
         ErrorLog ${APACHE_LOG_DIR}/error.log
             LogLevel warn
            CustomLog ${APACHE_LOG_DIR}/access.log combined
         Alias /doc/ "/usr/share/doc/"
       <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
       AllowOverride None Order deny,allow
             Deny from all
             Allow from 127.0.0.0/255.0.0.0 ::1/128
      </Directory>
</VirtualHost>

 

 

Acesta poate fi urmărit și oarecum replicat în fișierul de configurare pentru Nginx, care inițial este completat de forma:

 

 

server { listen 8000; 
          root /usr/share/nginx/www; 
          index index.html index.htm; 
          server_name localhost; 
          location / { 
                      try_files $uri $uri/ /index.html; 
                      } 
          location /doc/ { 
                       alias /usr/share/doc/; 
                       autoindex on; 
                       allow 127.0.0.1; 
                       deny all; 
                         } 
         }

 

 

Asta dacă scoatem din el toate comentariile.

Trecerea de la Apache la NGINX

Apache-vs-Nginx

Pentru că este o piață liberă în ceea ce privește aplicațiile, apar noi aplicații pe parte de server ce pot face o diferență când este vorba de viteză. În funcțiile de necesitățile unui proiect web, este posibil să fie nevoie de migrarea unui astfel de proiect de la implementarea lui pe un server web de tip Apache la implementarea lui pe un server web de tip Nginx.

Apache si Nginx fac în esență același lucru însă, in anumite situații Nginx ar fi cel ce s-ar mișca mai repede. Odată cu începerea unui proiect web se poate decide o listă de opțiuni de care trebuie să beneficieze un site web sau o aplicație în desfășurare. Deși serverul web Apache este în prezent cel mai popular server web din lume, Nginx câștigă teren foarte rapid. Personal am instalat și configurat servere în ambele variante și se poate observa clar că Nginx se comportă excelent în timp ce utilizează puține resurse. Pentru multe site-uri Web, migrarea la Nginx ar îmbunătăți performanța.

Au fost și situații când s-a cerut trecerea de la Apache la Nginx și am să scriu puțin despre asta mai jos.

Pentru a trece de la Apache la Nginx, cu siguranță nu ar trebui să fie Nginx instalat pe server ci doar Apache. De accea ar trebui instalat Nginx în funcție de sistemul de operare ce se afla pe server. Indiferent de sistemul de operare ar trebui să ne asigurăm că avem un user cu drepturi de instalare pe server ca root sau orice alt user listat in sudoers cu drepturi de root.

Odată ce Nginx este instalat ar trebui să ocolim cumva portul 80 pe care acum asculta conexiunile Apache-ul. Pentru asta trebuie să edităm un fișier de configurare la alegere dintre cele două tipuri de servere pentru că acum ele se blochează ascultând amândouă la conexiunile portului 80.

Structuri de informații

mate-info

Programele pentru calculatoare lucrează de obicei cu tabele de informații. În forma sa cea mai simplă, tabelul poate fi o listă lineară de elemente, atunci când proprietățile sale răspund unor întrebări de genul:

  • care este primul element din listă?
  • care este ultimul?
  • ce elemente preced și urmează după un element dat?
  • câte elemente sunt în listă?

În situații mai complicate tabelul:

  • ar putea fi un vector bidimensional (matrice) sau un vector n-dimensional cu n > 2;
  • ar putea fi o structură arborescentă;
  • ar putea fi o strucutră complexă multi-înlănțuită cu un număr imens de legături (e.g. creierul uman).