sql >> Databáze >  >> RDS >> Mysql

přesměrovat 404 na podobné adresy URL

Ó člověče, člověče!

To, co požadujete, není jednoduché a potřebujete k tomu výkonný počítač, ale výsledky jsou prostě úžasné.

Zde je to, co bych navrhoval udělat:

  • Pro správné zpracování 404 máte ErrorDocument přesměrování v konfiguraci vhost. Můj vypadá takto:ErrorDocument 404 /404.php;
  • Pokud máte 404, Apache zavolá /404.php se všemi argumenty (která špatná adresa URL atd., vypište $_SERVER vidět toto). Musíte otestovat, zda jsou v URL pouze dva výrazy / tj. http://mysite.com/(expr1)/(expr2)/
  • Pokud ne, proveďte klasickou 404.
  • Pokud ano, proveďte SOUNDEX vyhledávání pomocí MySQL (ve vašem 404 Php soubor). Podívejte se na ukázku dotazu zde .
  • Potom v tomto „speciálním“ případě 404 udělejte návrh, jako to dělá google, tj.:„měli jste na mysli /action/story-name-action/ ? pokud ano, klikněte na odkaz“.

Je to těžká práce, ale je to zajímavé a zároveň ukazuje vaši dovednost. Toto umí jen velmi málo webů (znám jen google).

Zde je ukázka na mém francouzském stole, která by vám mohla poskytnout přehled o tom, jak to funguje:

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> 


  1. při navazování připojení k serveru SQL došlo k chybě

  2. Jak zrušit všechny uživatelské tabulky?

  3. chyba:'Nelze se připojit k místnímu serveru MySQL přes soket '/var/run/mysqld/mysqld.sock' (2)' -- Chybí /var/run/mysqld/mysqld.sock

  4. Nelze se připojit k žádnému ze zadaných hostitelů MySQL