1. 程式人生 > >搭建一個圖片伺服器

搭建一個圖片伺服器

      最近在學習一個電商專案,其中用到了圖片上傳服務,自己在學習過程中遇到了點問題,記錄下來,以備以後查詢

      首先需要安裝nginx和vsftpd,這兩者的安裝都有相應的手冊,步驟非常詳細,我就不囉嗦了,有需要的,請到:http://download.csdn.net/detail/u012453843/9720373和 http://download.csdn.net/detail/u012453843/9720372分別進行下載。

      安裝完上面兩個服務之後,我們需要配置一下nginx的配置檔案才能使用。

      一般情況下nginx的安裝目錄是/usr/local/目錄下,但如果不在這個目錄下,我們想知道到底安裝到哪兒了,可以使用命令:find / -name nginx,如下所示,可以看到查詢出來兩條,其中第一條是我們nginx的安裝目錄,第二條是nginx解壓後的包所存放的目錄。

[[email protected] conf]# find / -name nginx
/usr/local/nginx/conf/nginx
/root/nginx-1.8.0/conf/nginx

       既然找到了安裝目錄,我們便繼續找到nginx的配置檔案nginx.conf,如下所示。
[[email protected] conf]# cd /usr/local/nginx/
[[email protected] nginx]# ls
conf  html  logs  sbin
[[email protected] nginx]# cd conf/
[[email protected]

conf]# ls
fastcgi.conf          fastcgi_params.default  mime.types          nginx.conf.default   uwsgi_params
fastcgi.conf.default  koi-utf                 mime.types.default  scgi_params          uwsgi_params.default
fastcgi_params        koi-win                 nginx.conf          scgi_params.default  win-utf
[
[email protected]
conf]#

        我們可以使用Nodepad++連線我們的伺服器(這裡我用的是虛擬機器)找到對應的nginx.conf檔案,如下圖所示,在配置檔案中我們只需做兩處改動,大家不知道怎樣用Nodepad++的話,可以參考:http://blog.csdn.net/u012453843/article/details/52987666這篇部落格。

第一處:把第一行的user root前面的#去掉,之所以這樣做是因為訪問許可權的問題,不去掉的話,會報Forbidden錯誤。

第二處:新添一個server,listen的埠還是用預設的80埠,server_name是我們的圖片伺服器的IP(192.168.156.10是我的圖片伺服器的IP,大家根據自己的圖片伺服器的IP進行更改即可),location指定了我們的圖片伺服器存放圖片的地址,大家需要把圖片上傳到/home/ftpuser/www/目錄下面才行,我把圖片放到了/home/ftpuser/www/images/的目錄下了。修改完配置檔案之後我們儲存就行了,nodepad++會自動幫我們把配置檔案更新到伺服器上。

server {
listen       80;
server_name  192.168.156.10;
location / {
                root /home/ftpuser/www/;
        }
}


     接下來,我們需要先檢查一下修改後的nginx.conf是否正確,我們檢查所使用的命令是:./nginx -t,如下所示,可以看到是沒問題的。

[[email protected] sbin]# ./nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

     配置檔案沒錯之後,我們重新載入nginx的配置檔案,使用的命令是:./nginx -s reload
[[email protected] sbin]# ./nginx -s reload
[[email protected] sbin]#

     下面我們來試試我們的圖片伺服器是否成功,我們像圖片伺服器的相應目錄下放幾張圖片,這裡我用的工具是FileZilla,如下圖所示。我上傳了兩張照片,分別是1.jpg和2.jpg

注意:我們上傳的時候可能會遇到無法將圖片上傳到images目錄下也無法將images下的圖片刪除的情況,這是由於images資料夾的許可權不足造成的,如下所示:

[[email protected] www]# ls -l
total 128
-rw-r--r--. 1 ftpuser ftpuser 124153 Dec 24 13:54 3.jpg
drwxr-xr-x. 2 nobody  ftpuser   4096 Dec 24 16:14 images

       可以看到images資料夾的許可權是rwxr-xr-x.許可權分為三組,每組三個許可權,r代表讀,w代表寫,x代表進入資料夾的許可權,第一組是檔案所有者的許可權可以看到許可權是rwx也就是讀、寫、進入資料夾三者許可權都有,第二組是同組使用者的許可權,可以看到是r-x,意思是有讀和進入資料夾的許可權,第三組是其它使用者的許可權,可以看到也是r-x即有讀和進入資料夾的許可權。

        通過上面的說明相信大家已經知道為何我們無法向images目錄下上傳檔案和從images目錄下刪除檔案了,因為我們的FileZilla客戶端沒有images目錄的寫許可權,因此,為了解決這個問題,我們需要改變images資料夾的許可權,如下所示。

[[email protected] www]# chmod 777 images

          新增完許可權之後我再看images目錄的許可權,發現三個分組都有寫許可權了,這時我們再上傳和刪除圖片就沒問題了。
[[email protected] www]# ls -l
total 4
drwxrwxrwx. 2 nobody ftpuser 4096 Dec 24 16:14 images


       下面我們便通過瀏覽器來瀏覽一下,看是否能看到我們上傳的圖片,如下圖所示,發現可以正常訪問,說明我們的圖片伺服器成功了!


相關推薦

搭建一個圖片伺服器

      最近在學習一個電商專案,其中用到了圖片上傳服務,自己在學習過程中遇到了點問題,記錄下來,以備以後查詢       首先需要安裝nginx和vsftpd,這兩者的安裝都有相應的手冊,步驟非常詳細,我就不囉嗦了,有需要的,請到:http://download.csd

利用docker搭建一個git伺服器Gogs

利用docker搭建一個git伺服器Gogs Gogs 是一款極易搭建的自助 Git 圖形化管理介面。 #拉取gogs映象 docker pull gogs/gogs #建立gogs容器 docker run -di --name=gogs -p 10022:22 -p 3000:3

Python中使用Flask、MongoDB搭建簡易圖片伺服器

轉載:http://www.cppcns.com/shujuku/mongodb/119378.html 這篇文章主要介紹了Python中使用Flask、MongoDB搭建簡易圖片伺服器,本文是一個詳細完整的教程,需要的朋友可以參考下 1、前期準備 通過 pip 或 easy_insta

用nodejs搭建一個本地伺服器,以供本地介面獲取服務端資料

1、首先下載安裝好nodejs 64位的nodejs5.6.0下載地址:  5.6.0 nodejs,根據提示安裝在自己的電腦上即可 2、安裝好了,開啟cmd視窗,輸入命令:npm -v 檢驗nodejs是否安裝成功,如果出現以下介面則說明安裝成功了 3、輸入命令 

如何搭建一個ftp伺服器

首先ftp一般用proftp(專業型)或者vsftp(安全 型),一臺伺服器當然選擇安全型的。輸入如下命令: 這表示linux有這個軟體包,如果麼有可以從網上下載。。。。  在輸入: 注意不僅要開啟vsftp還要關閉防火牆(如果遠端登入是linux使用者不必關閉

Go搭建一個Web伺服器

前面小節已經介紹了Web是基於http協議的一個服務,Go語言裡面提供了一個完善的net/http包,通過http包可以很方便的就搭建起來一個可以執行的Web服務。同時使用這個包能很簡單地對Web的路由,靜態檔案,模版,cookie等資料進行設定和操作。 http包建立W

用java搭建一個分散式伺服器(一)

本專欄主要介紹如何用java實現一個小型分散式(單機多程序模式)伺服器,希望能給剛開始學分散式的朋友一些幫助。講得不對的地方歡迎在評論區指出。 用到的主要技術棧: netty 網路傳輸框架 spring-boot java網路程式設計 Java多執行緒

手把手教你搭建一個直播伺服器(Nginx+Rtsp)

本教程感謝慕課網常用工具:                ffmpeg音視訊編解碼                 ffplay音視訊播放工具搭建流媒體伺服器                準備流媒體伺服器linux                準備並安裝Nginx服務  

centos6.5下如何搭建一個ftp伺服器和使用客戶端

一:搭建伺服器: 1.下載vsftpd軟體: 2.以root身份進入/etc/vsftpd目錄: 3.修改vsftpd.conf這個配置檔案(千萬記住不要在等號兩邊留空格) 4.重啟vsftpd服務: 至此伺服器端就搭建完畢了,就這麼簡單 二:客戶端使用: ce

阿里雲伺服器搭建FTP圖片伺服器[圖文詳解]

FastDFS是用c語言編寫的一款開源的分散式檔案系統。FastDFS為網際網路量身定製,充分考慮了冗餘備份、負載均衡、線性擴容等機制,並注重高可用、高效能等指標,使用FastDFS很容易搭建一套高效能的檔案伺服器叢集提供檔案上傳、下載等服務。 Tracker

解決使用FTPClient物件或FtpUtil工具類上傳檔案為空(搭建Nginx圖片伺服器

一、使用FTPClient上傳檔案為空 JAVA使用FTPClient上傳檔案時總是為空,有些資料說防火牆設定問題,但是本機防火牆已設定過。  後來查了下資料,FTP伺服器有被動模式和主動模式。  在JAVA中將FTPClient設定為被動模式即可解決問題。  **FT

搭建資源伺服器(3)---開始搭建Nginx圖片伺服器

1、效果 例如:圖片通過ftp服務上傳到/home/ftpuser/www/images目錄下,我想通過訪問Nginx伺服器來訪問ftp目錄下的圖片檔案,該url為http://192.168.128.128/images/xxx.jpg。即使用http請求訪

搭建一個後臺伺服器--服務端(非同步,大併發)

上篇的阻塞模式下伺服器的併發只有幾K,而真正的server 像nginx, apache, yumeiz 輕輕鬆鬆處理幾萬個併發完全不在話下,因此大併發的場合下是不能用阻塞的。 1W的併發是一個分隔點,如果單程序模型下能達到 的話,說明至少在伺服器這塊你已經很厲害了。 伺服

使用RocketMQ 和 Netty WebSocket 搭建一個訊息伺服器 (一)

      專案要做一個訊息伺服器,最近瘋狂百度查詢資料終於搭建完事兒了. 剛開始一臉懵逼,學習了這麼久總算是入門兒因為只是一個訊息伺服器,業務不算太複雜,所以我使用spring boot 來做(省事!)spring boot 的建立在這裡就不發了,我想寫的是搭建的思路,因為

Centos7 下nginx 搭建檔案圖片伺服器

現在伺服器部署nginx yum install -y epel-release yum install nginx -y 安裝完成之後 訪問ip 由此可見nginx服務是可用的 修改nginx的配置檔案如下 root@localhost conf.d]# pwd /etc/nginx/conf.d [

基於Docker搭建Nginx圖片伺服器

前言 一般開發中,都會把圖片上傳到一個目錄,然後將目錄和檔名拼接儲存在資料庫中,但是,這種方法如果沒弄好的話可能有一定的缺陷。 若專案搬遷,即時這臺伺服器本身還在用,存放在伺服器的跟專案相關的圖片也要跟著搬遷,同時還要修改程式碼,會造成較多麻煩。如果搭建一個專門存放圖片的伺服器,而且通過ftp傳輸,那麼你的程

搭建一個用於學習的 圖片伺服器的過程記錄

 1, 使用IDEA建立一個maven的web工程, 作為伺服器只需要在webapp下建立一個images資料夾作為圖片的儲存目錄,然後在web.xml裡面配置tomcat外掛, 虛擬路徑設定為/, 埠號改為 8003,防止8080埠被意外佔用.  2, 使用springMV

如何在伺服器搭建一個lamp(Linux(CentOS7)+Apache+MySQL+PHP)環境

一、 安裝Apache 1.安裝 yum -y install httpd 1 2.開啟apache服務 systemctl start httpd.service 1 3.設定apache服務開機啟動 systemctl enable httpd.service

Linux——在centos伺服器搭建一個ftp服務

安裝FTP服務 安裝 yum install -y vsftpd 啟動 service vsftpd start 嘗試訪問訪問 ftp://ip可瀏覽機器上的pub目錄了,該目錄為伺服器上/var/ftp/pub/。 配置許可權配置 FTP 許可權 vsf

Nginx+FastDFS圖片伺服器搭建

文章目錄 nginx的反向代理 反向代理模擬 複製兩個tomcat模擬反向代理 修改tomcat配置檔案 無法訪問歡迎頁面【防火牆問題】 更改兩個index.jsp主頁 反向代理