本文章仅为我个人学习经验的总结,没其它任何用途。
首先,在linux操作系统下搭建FTP服务器,需要先安装vsftp,用apt-get update 更新软资源,再获取root权限,通过 apt-get install vsftpd 命令安装vsftp,
安装完后默认自动创建ftp用户,用户名就是ftp,之后设置密码。
用mkdir /home/ftp命令创建ftp家目录,这里家目录可以根据自己来设置权限,暂时用chmod 777 来设置为所有人都可以访问。
之后用 vi或vim /etc/vsftpd.conf 命令对vsftp的配置文件做部分修改(vim编辑器如果提示没有安装则需要先安装),
按照以下方式修改配置
chroot_list_enable=yes ,chroot_list_file才会起作用
具体chroot_local_user与chroot_list_enable配置关系如下:
之后在末尾添加这三行
Esc按:wq保存退出后进入/etc/vsftpd.user_list添加允许登录的用户,一户一行
配置没有问题后可以输入 service vsftpd restart重启FTP服务器,之后可以在网页输入访问地址ftp://localhost或在终端ftp localhost进行访问
在这里可能会报500oops错误提示没有vsftpd.chroot_list,需要手动输入命令 mkdir /etc/vsftpd.chroot_list创建。也可以通过主机与虚拟机是否相互ping通查看
二、在java中整合FTP
导入核心包 commons-net-version.jar
// 1、创建一个FtpClient对象
FTPClien ftpClient=new FTPClient();
// 2、创建FTP连接
ftpClient.connect("192.168.0.1",21);
//3、登录FTP
ftpClient.login("ftp","123456");
//4、读取本地文件
FileInputStream inputStream=new FileInputStream(new File("E:\\111.jpg"));
//5、设置上传路径
ftpClient.changeWorkingDirectory("/usr/test/nginx/images");
//6、修改上传文件类型为二进制
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
//7、服务器储存文件
ftpClient.storeFile("aaa.jpg","inputStream");
//8、关闭连接
ftpClient.logout();
三、nginx+tomcat反向代理
这里nginx启动我就不多说了,直接说配置,在server{}上加上
upstream send{ #服务器集群
server 192.168.0.1:8085 weight=1; #服务器IP/端口/权重(权重越大分配概率越高)
server 192.168.0.1:8087 weight=2;
}
server{}的下面
location / { root
/date/wwwroot/linuxtone/
;
proxy_redirect off ;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 50m;
client_body_buffer_size 256k;
proxy_connect_timeout 30;
proxy_send_timeout 30;
proxy_read_timeout 60;
proxy_buffer_size 256k;
proxy_buffers 4 256k;
proxy_busy_buffers_size 256k;
proxy_temp_file_write_size 256k;
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
proxy_max_temp_file_size 128m;
这些配置根据个人来设置
proxy_pass http://send;
proxy_redirect default;
}
至于tomcat只需要改server配置下三处端口
在linux下安装nginx需要首先先准备 openssl-fips-2.0.2.tar.gz zlib-1.2.7.tar.gz pcre-8.21.tar.gz nginx-1.2.6.tar.gz三个包
1.安装openssl-fips-2.0.2.tar.gz
[root@localhost mrms]# tar -zxvf openssl-fips-2.0.2.tar.gz [root@localhost mrms]# cd openssl-fips-2.0.2 [root@localhost openssl-fips-2.0.2]# ./config [root@localhost openssl-fips-2.0.2]# make [root@localhost openssl-fips-2.0.2]# make install |
2.安装zlib-1.2.7.tar.gz
[root@localhost mrms]# tar -zxvf zlib-1.2.7.tar.gz [root@localhost mrms]# cd zlib-1.2.7 [root@localhost zlib-1.2.7]# ./configure [root@localhost zlib-1.2.7]# make [root@localhost zlib-1.2.7]# make install |
3.安装pcre-8.21.tar.gz
[root@localhost mrms]# tar -zxvf pcre-8.21.tar.gz [root@localhost mrms]# cd pcre-8.21 [root@localhost pcre-8.21]# ./configure [root@localhost pcre-8.21]# make [root@localhost pcre-8.21]# make install |
4.安装 nginx-1.2.6.tar.gz
[root@localhost mrms]# tar -zxvf nginx-1.2.6.tar.gz [root@localhost mrms]# cd nginx-1.2.6 [root@localhost nginx-1.2.6]# ./configure --with-pcre=../pcre-8.21 --with-zlib=../zlib-1.2.7 --with-openssl=../openssl-fips-2.0.2 [root@localhost nginx-1.2.6]# make [root@localhost nginx-1.2.6]# make install |
检测是否安装成功
[root@localhost nginx-1.2.6]# cd /usr/local/nginx/sbin
[root@localhost sbin]# ./nginx -t
启动nginx
[root@localhost sbin]# ./nginx
在图片服务器上访问图片需要用nginx反向代理,在 location / {
root /home/ftpuser/www;#定义服务器的默认网站根目录位置
index index.html index.php index.htm;#定义首页索引文件的名称
}