[英]PHP search engine problem
我使用Sphider作為我的網站的搜索引擎,它確實很容易使用,但是本地化字符存在一些重大問題。
我所有的html / php頁面的字符集都定義為UTF-8,而Sphider的搜索和結果頁面的字符集為ISO-8859-1,當我第一次使用Sphider“蜘蛛”爬網我的網站時,本地化字符到一些我不知道的編纂中
“ç”變為“ç”,以“ã”,“á”等表示
當我在MySql中創建數據庫時,我將其設置為utf-8_general_ci,我對該數據庫的定義是:MySQL字符集:UTF-8 Unicode(utf8)MySQL連接排序規則:utf-8_unicode_ci
這是一個實際的問題,因為該搜索無法正常工作,例如,如果我搜索“diferença”,則在網址中它將顯示為“?query =diferença&search = 1”,這是正確的,但在“建議的搜索”中不會產生任何結果如果看不到它,它將顯示為“ diferen.a”,“ç”已變成黑色正方形,上面帶有白色問號。
我相信蜘蛛可能具有不同的工作字符集,但我似乎無法理解是否確實如此。 我也主要是針對英語而發展的,我認為不難理解它在發展過程中會遇到一些麻煩。
有沒有人有任何經驗,或者我應該怎么做才能解決這個問題?
真正困擾我的是不理解為什么我在數據庫中得到奇怪的符號。
快速瀏覽一些Sphider源代碼文件后發現該應用程序僅適用於Latin1字符集。 您應該切換到其他搜索引擎,例如Lucene 。 不過,您需要做更多與搜索相關的編碼。 如果您不想這樣做,並且您的網站是公開的,則只需集成Google搜索即可。
您應該在utf-8中擁有一切。
一位小姐,您會遇到問題(我是根據個人經驗講的)
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
如果以上條件仍然不夠,請也遵循《 The Disintegrator》的回答。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.