前言
最近更換了部落格空間後,發現許多文章頁出現404的情況,找了一下原因,發現是由於url含有中文而nginx預設不支援中文url導致的。此文記錄了解決方法。
在apache中,要實現對中文的支援需要單獨載入中文模組,而nginx是支援多種編碼不需要安裝其他元件的,只是預設是走utf-8的支援路線。這裡提供兩種方法實現nginx對中文url的支援。
方法一
利用convmv對檔名轉碼
此方法治標不治本,僅供緊急時候使用(訪問量大時間段,無法對伺服器進行重啟操作的時候)。
這裡以centos為例,其他系統同理。
安裝convmv?
1yum -y
install
convmv
轉碼?
1convmv -fgbk -tutf8 -r --notest target
其中-f是源編碼,-t是目標編碼,-r是遞迴處理目錄,–notest是不移動,實際上對檔案進行改名,target是目標目錄。
方法二
更改nginx站點配置檔案,修改編碼為utf-8。
系統區域語言設定?
1# vi /etc/sysconfig/i18n
加入?
1
2
lang=
"en_us.utf-8"
sysfont=
"latarcyrheb-sun16"
並重啟系統(如果沒有此檔案則建立)
更改nginx設定
編輯站點的nginx配置檔案,在sever中新增
?
1
charset utf-8;
如:?
1
2
3
4
5
6
7
server{
listen 80;
servername www.iots.vip;
root /www;
index index.html index.jsp;
charset utf-8;
...
同時需要將ftp與shell工具的字符集設定為utf-8。
總結
linux下sublime無法使用中文輸入法
儲存下面的 到檔案sublime imfix.c 位於 目錄 include void gtk im context set client window gtkimcontext context,gdkwindow window 將上一步的 編譯成共享庫libsublime imfix.so,命令 ...
cmd dos 下 無法顯示中文
在做程式開發的時候經常需要在使用命令列進行操作,dos環境本身是不支援中文的,有時候中文編碼的問題就像蒼蠅一樣討厭,下面提供幾種常用的手段解決win7環境下中文顯示亂碼的問題 方法一 修改登錄檔 雙擊執行,看到這樣的提示框就表明ok了。當然也可以手動修改登錄檔 然後在hkey current use...
ubuntu下sublime中文無法輸入的問題
之前就載ubuntu14.0.04上安裝了sublime,在學習python的時候,基本不怎麼使用中文,所以就沒有解決它無法進行中文輸入的問題,今天心血來潮,想解決一下這個問題,也是為以後少點麻煩,下面我列出我解決的過程與步驟 include void gtk im context set clie...