Oh homem, oh homem!
O que você está pedindo não é simples e precisa que você tenha um computador potente, mas os resultados são simplesmente incríveis.
Aqui está o que eu sugiro fazer:
- Para o manuseio adequado de 404, você tem o
ErrorDocument
redirecionamento na configuração do vhost. O meu está assim:ErrorDocument 404 /404.php
; - Ao ter um 404, o Apache chamará
/404.php
com todos os argumentos (qual URL ruim e assim por diante, despeje$_SERVER
para ver isso). Você tem que testar se existem apenas duas expressões na URL/
ou seja,http://mysite.com/(expr1)/(expr2)/
- Se não, faça um 404 clássico.
- Se sim, faça um SOUNDEX
pesquise com MySQL (no seu
404 Php
Arquivo). Veja o exemplo de consulta aqui . - Então, neste caso 404 "especial", faça uma sugestão, como o google faz, ou seja:"você quis dizer
/action/story-name-action/
? em caso afirmativo, clique no link".
Este é um trabalho árduo, mas é interessante e mostra sua habilidade. Muito poucos sites fazem isso (eu só conheço o google na verdade).
Aqui está uma demonstração na minha mesa de francês que pode lhe dar uma visão geral de como funciona:
mysql> SELECT * FROM job WHERE
SOUNDEX( description ) LIKE SOUNDEX('Machiniste cinéma');
+-------+--------------------+
| id | description |
+-------+--------------------+
| 14018 | Machiniste cinéma |
+-------+--------------------+
1 row in set (0.06 sec)
mysql> SELECT * FROM job WHERE
SOUNDEX( description ) LIKE SOUNDEX('Mchiniste cinéma');
+-------+--------------------+
| id | description |
+-------+--------------------+
| 14018 | Machiniste cinéma |
+-------+--------------------+
1 row in set (0.06 sec)
mysql> SELECT * FROM job WHERE
SOUNDEX( description ) LIKE SOUNDEX('Machnste cinema');
+-------+--------------------+
| id | description |
+-------+--------------------+
| 14018 | Machiniste cinéma |
+-------+--------------------+
1 row in set (0.06 sec)
mysql>