24
1 Desenvolvimento web Linux Desenvolvimento web Linux

Desenvolvimento web no Linux

Embed Size (px)

Citation preview

Page 1: Desenvolvimento web no Linux

11

Desenvolvimento web LinuxDesenvolvimento web Linux

Page 2: Desenvolvimento web no Linux

22

GNU/LinuxGNU/Linux

● Junção do kernel linux com aplicativos GNU;

● Originário do UNIX;

● 1984 GNU Richard Stallman;

● 1985 GPL (GNU General Public License);

● 1991 kernel linux – Linus Torvalds;

● 1992 integração GNU + kernel linux.

Page 3: Desenvolvimento web no Linux

33

GNU/LinuxGNU/Linux

Page 4: Desenvolvimento web no Linux

44

GNU/Linux – Ubuntu 14.04GNU/Linux – Ubuntu 14.04

● Ubuntu 4.10: primeira versão do Ubuntu, lançada em 20 de outubro de 2004;

● Distribuição originária do Debian;

● Empacotamento .deb;

● Apt-get - APT (Advanced Packaging Tool);

● Distro mais amigável;

Page 5: Desenvolvimento web no Linux

55

ApacheApache

● Base o servidor web NCSA 1.3;

● 1995 primeira versão 0.6.2;

● Suporte a scripts cgi usando linguagens como Perl, PHP, Shell Script, ASP;

● Mantido por Apache Software Foundation;

● Ultima versão estável 2.4.10;

● Multiplataforma.

Page 6: Desenvolvimento web no Linux

66

ApacheApache

Funcionado na estrutura cliente-servidor, o servidor web Apache, recebe as requisições do cliente (browser) e responde ao cliente em codificação HTML. O servidor web interpreta a codificação HTML e não interpreta o código PHP. Ao receber uma solicitação .php o servidor aciona o Interpretador PHP que processa as solicitações do código PHP tais como, acessar banco de dados, sistema de arquivos, acesso ao servidor de correio eletrônico etc e retorna para o Apache em formato HTML e ele manda para o browser. O browser lê o código HTML e monta a página web para o usuário.

Page 7: Desenvolvimento web no Linux

77

ApacheApache

Page 8: Desenvolvimento web no Linux

88

Apache - InstalaçãoApache - Instalação

No terminal digite:

sudo su

apt-get update

apt-get install apache2

acesse 127.0.0.1 para ver o resultado

Page 9: Desenvolvimento web no Linux

99

MySQLMySQL

● SGBD que utiliza a linguagem SQL

● 1994 Inicio do projeto - David Axmark, Allan Larsson e Michael "Monty" Widenius;

● 2008 MySQL AB adquirida pela Sun Microsystems;

● 2009 Oracle adquire a Sun Microsystems;

● Usado na Nasa, Hp, Bradesco, U.S Army;

● Ultima versão estável 5.6.12.

Page 10: Desenvolvimento web no Linux

1010

MySQL - InstalaçãoMySQL - Instalação

No terminal digite:

apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql

Page 11: Desenvolvimento web no Linux

1111

MySQL - InstalaçãoMySQL - Instalação

No terminal digite:

sudo mysql_install_db

mysql_secure_installation

Isto irá remover alguns usuários da amostra e bancos de dados, desativa o login do root remotos, e carregar as novas regras para o MySQL imediatamente a respeito das mudanças que fizemos.

Page 12: Desenvolvimento web no Linux

1212

PHPPHP

● 1995 Criado por Rasmus Lerdorf;

● Estruturado e Orientação a Objetos;

● Portabilidade;

● Tipagem dinâmica;

● Open-source;

● Server-side;

● Última versão estável php-5.6.1;

● Mantido por The PHP Group.

Page 13: Desenvolvimento web no Linux

1313

PHP - InstalaçãoPHP - Instalação

apt-get install php5 libapache2-mod-php5 php5 mcrypt

service apache2 restart

apt-get install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick

apt-get install php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell

apt-get install php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json

Page 14: Desenvolvimento web no Linux

1414

PHP - InstalaçãoPHP - Instalação

Para testar a configuração pode podemos criar um simples info.php com o seguinte conteúdo:

<?php

phpinfo();

?>

E aloque no diretório /var/www/html

Page 15: Desenvolvimento web no Linux

1515

VhostVhost

Virtual Host é a capacidade de hospedar mais do que um web site numa única máquina, com um endereço IP ou mais.

<VirtualHost *:80>

ServerName localhost

DocumentRoot /var/www/html

</VirtualHost>

Page 16: Desenvolvimento web no Linux

1616

HostsHosts

● O arquivo hosts é responsável pela localização por NOMES entre IP's;

● Fica localizado em /etc/hosts;

● Um DNS Local.

sudo nano /etc/hosts

127.0.0.1 localhost

Page 17: Desenvolvimento web no Linux

1717

Projeto – Livro de VisitasProjeto – Livro de Visitas

Projeto livro de visitas que servirá como exemplificação de alguns conceitos web

● Programação Orientada a Objetos (POO – OOP);

● Banco de Dados MySQL;

● Javascript e jQuery.

Page 18: Desenvolvimento web no Linux

1818

Projeto – RequisitosProjeto – Requisitos

O projeto consiste na elaboração de um pequeno sistema de livro de visitas no qual os visitantes possam enviar comentários. O sistema deverá conter as seguintes características:

● Necessariamente ser feito em uma ou mais Classes (POO); Utilizar um Banco de Dados MySQL;

● Os comentários deverão ser inseridos via Ajax utilizando jQuery atualizando automaticamente a lista e deverão conter os seguintes campos obrigatórios: nome, email e website;

● Um sistema de cadastro com login e senha para que o usuário não tenha que preencher os campos manualmente.

Page 19: Desenvolvimento web no Linux

1919

Projeto Estrutura no servidorProjeto Estrutura no servidor

Definindo o diretório root da aplicação:

● No diretório /var/www/html crie o diretório root de sua aplicação;

Abra o terminal e digite:

cd /var/www/html

sudo mkdir livro

Page 20: Desenvolvimento web no Linux

2020

Projeto Criando VhostProjeto Criando Vhost

Crie um vhost para que você possa acessar sua aplicação através de uma url.

Acesse /etc/apache2/sites-available/ crie um arquivo example.conf para o projeto, faça com base no arquivo 000-default.conf

Abra o terminal e digite:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.conf

Isso irá criar uma cópia de um vhost padrão bastando apenas editar alguns parâmetros de configuração.

Page 21: Desenvolvimento web no Linux

2121

Projeto Editando VhostProjeto Editando Vhost

No nosso exemplo ficaria configurado desta maneira:

<VirtualHost *:80>

ServerAdmin [email protected]

ServerName livro.com.br

ServerAlias www.livro.com.br

DocumentRoot /var/www/html/livro

ErrorLog ${APACHE_LOG_DIR}/error.log

CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Page 22: Desenvolvimento web no Linux

2222

Projeto Ativando VhostProjeto Ativando Vhost

Ativando o vhost e reiniciando o apache:

sudo a2ensite example.conf

sudo service apache2 restart

Page 23: Desenvolvimento web no Linux

2323

Projeto Editando hostProjeto Editando host

Para que nosso servidor consiga resolver o endereço www.livro.com.br é necessário adicionar essa informação no arquivo hosts:

Sudo vi /etc/hosts

127.0.0.1 localhost

127.0.1.1 livro.com.br

127.0.1.1 www.livro.com.br

Agora ao acessar www.livro.com.br o servidor entregará o conteúdo alocado no diretório /var/www/html/livro

Page 24: Desenvolvimento web no Linux

2424

Código fonteCódigo fonte