咱們部署程序時,圖片server是單獨的一臺server,有本身獨立的域名。而應用部署在還有一臺server上,咱們使用一些附件上傳工具。比方ajaxfileupload上傳附件時是沒法跨域訪問的。java
以前想的方案是,先上傳到應用所在的server。而後使用java的ftp組件上傳到圖片server上(固然了,圖片server上安裝了ftp服務端)。可是後來發現ftp上傳比較慢而且不穩定。決定換成NFS來解決問題。固然了這個方法到底是好仍是很差還有待檢驗。這裏不作討論。以前沒有弄過這個玩意,這裏記錄下遇到的問題。linux
問題1:操做系統版本號的問題。web
由於個人操做系統沒有安裝NFS,因此首先得安裝。這裏要注意在CentOS不一樣版本號中,比方CentOS5.X下需要使用命令:yum -y install nfs-utils portmap。咱們使用的操做系統是CentOS6.5,咱們這裏需要安裝的命令是:yum -y install nfs-utils rpcbind(關於yum命令,你們可以查查資料,總之其思路和maven的設計思路挺相似)。ajax
問題2:改動/etc/exports文件時,要注意格式,比方贊成鏈接的client地址與權限中間多了一個空格,應該是相似於:/usr/local/test/ 192.168.1.226(rw,no_root_squash,no_all_squash,sync),而不是:/usr/local/test/ 192.168.0.120 (rw,no_root_squash,no_all_squash,sync),不然在啓動NFS時就會報下邊錯誤:exportfs: No options for /usr/local/data/ 192.168.0.120: suggest 192.168.0.120(sync) to avoid warning
exportfs: No host name given with /usr/local/data (rw,no_root_squash,no_all_squash,sync), suggest *(rw,no_root_squash,no_all_squash,sync) to avoid warning
/tomcat/webfile 10.163.224.132 (rw,sync,no_root_squash)跨域
問題3:exportfs -r,這個必定要運行,不然不生效。tomcat
問題4:在client也必定要注意安裝NFS。不然光安裝服務端是不能訪問的。maven
問題5:service nfs start假設出現下面問題,可以不用理會:tcp
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: rpc.mountd: svc_tli_create: could not open connection for udp6
rpc.mountd: svc_tli_create: could not open connection for tcp6
rpc.mountd: svc_tli_create: could not open connection for udp6
rpc.mountd: svc_tli_create: could not open connection for tcp6
rpc.mountd: svc_tli_create: could not open connection for udp6
rpc.mountd: svc_tli_create: could not open connection for tcp6
[ OK ]
Starting NFS daemon: rpc.nfsd: address family inet6 not supported by protocol TCP
[ OK ]
Starting RPC idmapd: [ OK ]工具
以上就是整個過程,事實上也沒有啥技術含量,就是對於不熟悉linux的人有點幫助。spa