将远程图片服务器挂载到Nginx所在服务器上,然后在Nginx上配置访问。
步骤
两台服务器信息如下:
服务器名称 |
服务器IP |
共享目录 |
服务器说明 |
A |
10.100.1.10 |
/mnt/data |
Nginx所在服务器 |
B |
10.100.1.11 |
/usr/local/data |
图片所在服务器 |
1.配置共享服务器
目标:需要将B服务器上的目录/usr/local/data挂载到A服务器的/mnt/data下。
1.1. 配置B服务器NFS共享
注意:centos6.6使用的nfs4,已经不再需要安装portmap,而使用rpcbind代替。
命令:
#sudo vim /etc/exports
/usr/local/data 10.100.1.10(rw,sync)
说明:/usr/local/data 本服务器需要进行共享的文件夹,10.100.1.10 Nginx所在服务器
rw:表示具有读写权限;sync表示同步写内存和磁盘
配置修改生效
# sudo exportfs -r
1.2. 启动B服务器上的服务
启动rpcbind和NFS服务
先开启服务
# sudo chkconfig rpcbind on
# sudo chkconfig nfs on
启动服务
# sudo service rpcbind start
# sudo service nfs start
确认服务启动成功
# sudo rpcinfo -p
program vers proto port
100000 2 tcp111 portmapper
100000 2 udp111 portmapper
100003 2 udp2049 nfs
100003 3 udp2049 nfs
100003 4 udp2049 nfs
...
100005 3 tcp750 mountd
检查B服务器上是否输出共享目录
# sudo exportfs
/usr/local/data 10.100.1.10
1.3. 启动A服务器上的服务
启动rpcbind和NFS服务
先开启服务
# sudo chkconfig rpcbind on
# sudo chkconfig nfs on
启动服务
# sudo service rpcbind start
# sudo service nfs start
1.4. 挂载服务器
# sudo mount -o rw10.100.1.11:/usr/local/data/ /mnt/data
查看是否挂载成功
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 123G3.9G 113G 4% /
tmpfs 3.9G 03.9G 0% /dev/shm
/dev/sda1 190M 32M149M 18% /boot
/dev/sda5 165G 60M156G 1% /data
10.100.1.11:/usr/local/data/
485G 3.8G456G 1% /mnt/data
2.配置Nginx
location /img/ {
alias /mnt/data/;
autoindex on;
}
配置完成后刷新Nginx配置文件(命令: sudo ./Nginx -s reload)
然后就可以使用http://10.100.1.10/img/a.jpg进行图片访问了。