Pergunta

Estou criando um mecanismo de blog como um exercício de aprendizagem e um problema particular tem-me perplexo. Eu estou querendo saber como são posts criado em dizer um motor de blog como o Wordpress? Estou pensando há 2 maneiras que você pode fazer isso:

1) Criação de um novo post chamado 'testPost' cria uma nova página HTML chamada www.myblog.com/testPost.html. Então, para cada novo post você salvar uma nova página HTML para o servidor. Este método parece ineficiente. Um blog pode ter centenas de mensagens de blog, o que significa que você teria que criar centenas de páginas HTML. Eu não acho que eu quero usar este método.

2) Você tem uma página de blog genérico cujos dados são processados ??de acordo com a mensagem que você está tentando acessar. Por exemplo, se eu criei 'testPostOne' a página do blog pós genérico seria preenchido com dados e URL do testPostOne, se eu criei 'testPostTwo' então a página genérica tornaria respectivos conteúdos de testPostTwo e assim por diante.

Mas usando este método traz seus próprios problemas. Por exemplo, como você colocar um link para uma página que não existe realmente? Ligando para http://www.myblog.com/testPostOne.html não iria funcionar.

Estas são as duas maneiras que eu poderia vir acima com para resolver este problema. Eu não tenho certeza se há outras opções. Sinta-se livre para recomendar a melhor maneira de resolver este problema se você souber de um.

Basicamente, eu quero ser capaz de ter uma URL bem formatado para cada post sem ter que criar uma nova página HTML no servidor para cada um.

Editar : devo acrescentar que eu estou usando ASP.NET fazer isso para todos os métodos disponíveis através deste quadro seria útil

Foi útil?

Solução

A idéia básica seria a utilização de um banco de dados. Cada postagem seria uma entrada no DB, e você simplesmente recuperar os dados, dependendo da URL. Por exemplo,

www.myblog.com/posts.php?postid=1 ou www.myblog.com/posts.aspx?postid=1

Você pode então use métodos URL reescrita para recuperar o mesmo posto com uma URL mais limpa, ou melhor ainda um método RESTful para fazer a mesma tarefa.

Outras dicas

Aqui está um mecanismo de blog de código aberto escrito em ASP.NET 2.0 e um escrito em PHP (existem muitas outras pessoas lá fora). Você melhor aposta é para verificar o design e arquitetura e dissecar como ele (ou algo parecido) faz trabalho.

Você vai precisar fazer uma página dinâmica, digamos, em PHP que lê dados de um banco de dados para o conteúdo do post. Se você quiser URLs bonitas com sua página, então você vai querer olhar para algo como mod_rewrite para reescrever os URLs.

Se você criar dinamicamente a página (como na sugestão 2), o http: //www.myblog .com / testPostOne.html vai existir quando você tentar acessá-lo, mesmo que ele não é um arquivo actuall no disco ...

Assim sugestão 2 é provavelmente o melhor caminho a percorrer.

Pessoalmente, eu uso o mod_rewrite do Apache. Então, quando você tem uma URL como:

http://myblog.com/archives/my_very_first_post,

Você pode fazer uma regra de reescrita assim:

RewriteEngine on
RewriteRule ^archives/(.*)$ myblog.php?post=$1

Apache interpreta "my_very_first_post" como um posto de ID e alimenta-lo para um script PHP que manipula o ID. O script Obtém o post do banco de dados e exibe.

Eu acredito que esta é a abordagem mais comum.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top