Múltiplos Uploads com PHP, Mysql e Ajax - #18 Enviando para o ar
20/12/2019Nessa aula faremos o envio do site para um servidor online, explicando as configurações necessárias para usar online.
Criando e exportando o banco de dados
Primeiramente no nosso phpmyadmin vamos exportar nosso banco de dados, criar um banco de dados no nosso servidor online e importar o arquivo criado localmente.
Criando uma pasta temp
Para não atrapalhar o desenvolvimento local, é bom criar uma pasta temp, e todos os arquivos que forem alterados para o servidor sejam colocados nessa pasta temp, assim seu localhost continua funcionando normalmente.
Alterando o config.php
No config.php precisamos alterar os dados do banco de dados. Além disso, caso você utilize https é necessário colocar um "s" após o http na constante DIRPAGE e caso você esteja utilizando uma pasta interna, ou seja, não esteja utilizando o sistema na raíz do seu projeto, é necessário que você altere a variável $pastaInterna. Veja abaixo:
<?php
#Caminhos absolutos
$pastaInterna="upload/"; //Estou utilizando a pasta interna upload
define('DIRPAGE',"https://{$_SERVER['HTTP_HOST']}/{$pastaInterna}"); //Estou utilizando https
(substr($_SERVER['DOCUMENT_ROOT'],-1)=='/')?$barra="":$barra="/";
define('DIRREQ',"{$_SERVER['DOCUMENT_ROOT']}{$barra}{$pastaInterna}");
#Atalhos
define('DIRIMG',DIRPAGE.'img/');
define('DIRCSS',DIRPAGE.'lib/css/');
define('DIRJS',DIRPAGE.'lib/js/');
#Acesso ao db online
define('HOST',"MEU HOST ONLINE");
define('DB',"MEU DB ONLINE");
define('USER',"MEU USUÁRIO ONLINE");
define('PASS',"MEU PASSWORD ONLINE");
Alterando o htaccess
O htaccess você precisará alterar caso não esteja trabalhando na raiz do seu site. No caso, como utilizamos a pasta upload, o htaccess vai ficar assim:
RewriteEngine On
Options All -Indexes
DirectoryIndex index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /upload/index.php?url=$1 [QSA,L]
Alterando o javascript
No javascript, assim como no htaccess, a alteração só será necessária se não trabalharmos na raíz do site. No caso, alteraremos a função getRoot que ficará assim:
//Get absolute path
function getRoot()
{
return win.location.protocol+"//"+doc.location.hostname+"/upload/";
}
Posterior as alterações basta enviar o arquivo para o servidor online na pasta upload.
Observações
Lembre-se que caso você tenha colocado os arquivos na pasta temp, ao enviar os arquivos via ftp você tem que lembrar de substituílo pelos arquivos da pasta temp.
Lembre-se também de conferir no seu servidor o tamanho máximo que eles autorizam de envio de arquivos.
Espero que tenham gostado do curso. Caso queiram adquirir os códigos completos, basta realizar uma doação no valor de R$50,00 para a Webdesign em Foco. Solicite via email: webdesignemfoco@gmail.com