• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

pedrotuga

Uma ideia que eu tive: um motor de sites portavel

11 mensagens neste tópico

Pessoal... andava a pesquisar umas sobre javascript e acabei por tropeçar nuns artigos sobre php que me deram uma ideia porreira, digo eu.

Um motor de sites. Como o php5 vem com o sqlite que nos poupa as chatices das ligações sobre uma rede lembrei-me desta ideia.

Um motor de sites dinamicos escritos em php, escrito em php.

Não, não me enganei, vou explicar melhor:

Cria-se uma plataforma com uma pequena aplicação web que permite escrever código em php e guarda-lo na base de dados. E permite tambem  correr o site em questão.

A grande vantagem é o facto de se poder desenvlover aplicações em php que sejam completamente portaveis. Se desenvolvermos o site num servidor local e pretendermos muda-lo para outro servidor bastaria copiar um ficheiro ( uma base de dados sqlite ) , este levaria os dados e o código. Acabavam-se as chatices todas das configurações.

Penso que seria a plataforma ideal para desenvolver pequenos script reutilizaveis pois evitavam-se as complicações com paths e afins.

Assim de rajada ( e ainda estou a cozinhar isto na minha cebeçorra ) seria preciso escrever:

-Um wraper para pedidos HTTP - penso que bastam o POST e o GET. Este ficaria receberia o pedido original e depois processava-o de forma a executar o código php correspondete na base de dados.

-uma pequena interface de gestão e edição de ficheiros, permições etc - estes não existiriam fisicamente, seriam guardados numa tabela da bd.

Basicamente é isto, penso que podia ser um projecto porreiro aqui para o p@p ( se nao andarmos todos demasiado ocupados já :S )

Digam aí de vossa justiça, contribuam com opinioes e sugestoes.

EDIT:

Ok... tem que se arranjar forma de proteger a base de dados... penso que se pode usar um hash md5 para o nome do ficheiro e como chave de encriptação.

Outra funcionalidade porreira o uso do mod_rewrite, mas isso era mais um ficheiro o que é de evitar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas espera, deixa ver se entendi. Um site onde envias scripts e esse mesmo site vai fazer um preview desse script? Isso pode causar uns serios problemas de segurança mas é uma ideia arrojada.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muitas aplicações web já usam essa tecnica parcialmente.

A ideia era criar uma aplicação ultraleve que permitisse correr e desenvolver aplicacoes e guardar tugo num ficheiro.

Restaurar um backup de uma bd pode ser um pesadelo quando a aplicação que a usa foi modificada aos poucos. Assim fica tudo arrumadinho.

Quanto à segurança há formas de ocultar o nome da base de dados de forma a que ninguem faça download desta.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas essa aplicacao seria web-based? E depois ela zipava o ficheiro? Também traz suporte para BD?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas essa aplicacao seria web-based? E depois ela zipava o ficheiro? Também traz suporte para BD?

Sim era web-based. A ideia é fazer upload de um ficheiro e começar a curtir, em qq lado.

Nao zipava o ficheiro... guardaria tudo numa bd sqlite ( 1 ficheiro )

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Haa sim esquecime da sqlite. Sim sim tou a compreender, e alem disso podia ter um editor de ficheiros para poder curtir mesmo em qualquer lado :cheesygrin:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Haa sim esquecime da sqlite. Sim sim tou a compreender, e alem disso podia ter um editor de ficheiros para poder curtir mesmo em qualquer lado :cheesygrin:

A ideia é mesmo essa.

Se bem que os ficheiros seriam uma abstracção... na verdade seria um editor de registos que seira gravados na bd. Mas estou aqui a pensar num problema que é a inicialização do hash.... talvez seja preciso editar o ficheiro e inicializar uma variavel com um valor único.. uma coisa tipo UID.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

a forma de nao se poder fazer download da bd era, por exemplo, usar uma API no servidor (neste caso com uma dll a fazer as ligaçoes a BD), e assim ja dava, nao pedrotuga?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Essas coisas todas sao possiveis e um gajo pode aceder a uma bd sqlite que nao esteja numa directoria acessïvel via web. Mas a ideia nao ë essa... a ideia ë um motor o mais portavel possivel.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Segundo percebi era tipo um Googlepages com PHP e que não guardava ficheiro nenhum no servidor, usando apenas sqlite :P

Gosto da ideia, agora de repente lembro-me que tens de ter cuidado com as funções do PHP e que o servidor iria ter uma carga que não seria brincadeira no meio de tanto write/read na base de dados...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Segundo percebi era tipo um Googlepages com PHP e que não guardava ficheiro nenhum no servidor, usando apenas sqlite :P

Gosto da ideia, agora de repente lembro-me que tens de ter cuidado com as funções do PHP e que o servidor iria ter uma carga que não seria brincadeira no meio de tanto write/read na base de dados...

A ideia nao era bem essa. Isso é uma coisa que tambem se pode fazer mas tem um publico alvo completamente diferente. A ideia é criar um pequeno developer kit que permita criar aplicações php em que o código e os dados fiquem os dois na mesma base de dados para melhor portabilidade.

EDIT:estive a pensar nisto... um wraper para o post e o get não seriam necessarios, quando fossem implementados, a par com o devido rewriting isto estaria a transformar-se numa pequena framework. O que seria realmente necessario de inicio:

implementação de uma nova função ( ou classe ) 'include'

um sistema de ficheiros

um editor de ficheiros ( penso que é isto que fez o quickfire comparar isto ao google pages )

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora