Nginx

無法讓 pspell 工作

  • July 29, 2014

我安裝了 aspell\pspell,如果我安裝了

> aspell dump dicts
ar
cs
de
de_AT
de_CH
de_DE
en
en-variant_0
en-variant_1
en-variant_2
en-w_accents
en-wo_accents
en_CA
en_CA-variant_0
en_CA-variant_1
en_CA-w_accents
en_CA-wo_accents
en_GB
en_GB-ise
en_GB-ise-w_accents
en_GB-ise-wo_accents
en_GB-ize
en_GB-ize-w_accents
en_GB-ize-wo_accents
en_GB-variant_0
en_GB-variant_1
en_GB-w_accents
en_GB-wo_accents
en_US
en_US-variant_0
en_US-variant_1
en_US-w_accents
en_US-wo_accents
es
fr-40
fr-60
fr
fr-80
fr-lrg
fr-med
fr-sml
fr_CH-40
fr_CH-60
fr_CH
fr_CH-80
fr_CH-lrg
fr_CH-med
fr_CH-sml
fr_FR-40
fr_FR
fr_FR-60
fr_FR-80
fr_FR-lrg
fr_FR-med
fr_FR-sml
pt_BR
pt_PT
ro
ro-classic
ru
ru-ye
ru-yeyo
ru-yo
sv
tr

然而,當我執行這個簡單的腳本時:

<?php
$dict = pspell_new ("en");
if (!pspell_check ($dict, "carr")) {
   $suggestions = pspell_suggest ($dict, "carr");
    foreach ($suggestions as $suggestion) {
       echo "Did you mean: $suggestion?<br />";
    }
}
?>

我收到此錯誤:

PHP 警告:pspell_new():PSPELL 無法打開字典。原因:找不到語言“en”的單詞列表。在第 2 行的 /usr/share/nginx/html/t.php 中

我確定 aspell 已正確安裝,在 phpinfo() 上也顯示 pspell 已啟用我認為 php 正在錯誤目錄中搜尋字典。有沒有辦法知道在哪個目錄?

您正在執行 PHP/Aspell 程式碼。我沒有使用 PHP/Aspell 的經驗。不過,我確實在 Perl 和 Ruby 中組裝了一些 Aspell 程式碼,因此擁有一些經驗。您的 PHP/Aspell 問題乍一看是 Aspell 配置問題。如果http://vouters.dyndns.org/tima/Linux-Windows-Perl-Aspell-Determining_the_country_of_a_Web_query.html上的這個 URL 連結(Perl/Aspell 之一)對您有任何幫助,那麼我應該很高興。如果您保持好奇心和開放的心態,您可以參考http://vouters.dyndns.org/tima/Linux-Ruby-Aspell-Determining_the_country_of_a_Web_query.html上的 Perl 程式碼的 Ruby/Aspell 等效項。這項 Ruby/Aspell 工作的唯一目的是比較基於 Aspell 解決方案的相同算法上的 Ruby 和 Perl 性能。

真誠的,菲利普

引用自:https://serverfault.com/questions/566978