1. nginx 需要依赖以下模块:
gzip模块需要 zlib 库
rewrite模块需要 pcre 库
ssl 功能需要openssl库
1.1.安装pcre
1. 获取pcre编译安装包,在http://www.pcre.org/上可以获取当前最新的版本
2. 解压缩pcre-xx.tar.gz包。
3. 进入解压缩目录,执行./configure。
4. make & make install
1.2.安装openssl
1. 获取openssl编译安装包,在http://www.openssl.org/source/上可以获取当前最新的版本。
2. 解压缩openssl-xx.tar.gz包。
3. 进入解压缩目录,执行./config。
4. make & make install
1.3.安装zlib
1. 获取zlib编译安装包,在http://www.zlib.net/上可以获取当前最新的版本。
2. 解压缩zlib-xx.tar.gz包。
3. 进入解压缩目录,执行./configure。
4. make & make install
1.4.安装nginx
1. 获取nginx,在http://nginx.org/en/download.html上可以获取当前最新的版本。
2. 解压缩nginx-xx.tar.gz包。
3. 进入解压缩目录,执行(指定安装路径/usr/local/nginx)
./configure
--prefix=/usr/local/nginx
--pid-path=/var/run/nginx/nginx.pid
--lock-path=/var/lock/nginx.lock
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--with-http_gzip_static_module
--http-client-body-temp-path=/var/temp/nginx/client
--http-proxy-temp-path=/var/temp/nginx/proxy
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi
--http-scgi-temp-path=/var/temp/nginx/scgi
注意:上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
4. make & make install
5. /usr/local/nginx/sbin 下存放的就是 nginx 的可执行文件
6. nginx 的启动
进入 /usr/local/nginx/sbin目录, 执行 ./nginx 启动(nginx 默认端口是 80 , 测试是否启动成功 浏览器: http://192.168.88.142/ (本机地址)进入欢迎页面就说明启动成功)---如果出现(nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory))错误, 在/var/run下建立nginx文件夹即可
7. nginx 的停止
进入 /usr/local/nginx/sbin目录 执行 ./nginx -s stop 停止
8. 重新加载配置文件
进入 /usr/local/nginx/sbin目录 执行 ./nginx -s reload (重启)
9. 安装 vsftpd 服务
1. http://www.rpmfind.net/linux/rpm2html/search.php?query=vsftpd 下载对应系统的版本
2. rpm -ivh **.rpm 进行安装
3. service vsftpd start 启动 ftp 服务
4. useradd ftpuser 添加 ftp 用户
passwd ftpuser 为 ftpuser 用户添加密码
5. 在 /home 目录下会自动建立一个文件夹 ftpuser, 可以在ftpuser目录下建立文件目录 比如 file, 浏览器中访问 ftp://192.168.250.204/file 可以看到file中存储的文件了
5. 防火墙开启21端口
vim /etc/sysconfig/iptables
在行上面有22 -j ACCEPT 下面另起一行输入跟那行差不多的,只是把22换成21,然后:wq保存。
重启iptables service iptables restart
6. 关闭匿名访问
/etc/vsftpd/vsftpd.conf
重启ftp服务: service vsftpd restart
7. 开启被动模式
默认是开启的,但是要指定一个端口范围,打开vsftpd.conf文件,在后面加上
pasv_min_port=30000
pasv_max_port=30999
表示端口范围为30000~30999,这个可以随意改。改完重启一下vsftpd
由于指定这段端口范围,iptables也要相应的开启这个范围,所以像上面那样打开iptables文件。
也是在21上下面另起一行,更那行差不多,只是把21 改为30000:30999,然后:wq保存,重启下iptables。这样就搞定了。
8. 设置开机启动vsftpd ftp服务
chkconfig vsftpd on
10. 修改 nginx 配置文件
cd /usr/local/nginx/conf vi nginx.conf 指定 nginx 存储根目录
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root /home/ftpuser/www;
index index.html index.htm;
}
11. 使用工具类 ftpUtil 来上传图片到指定目录(参考 ftp 上传文件) 链接:https://pan.baidu.com/s/1Y-an-VCviLrCPcgO6I9tgw 密码:4t1j
@Test public void testFtpClient2() throws FileNotFoundException { FileInputStream fileInputStream = new FileInputStream(new File("D:\hello.png")); FtpUtil.uploadFile("192.168.88.142", 21, "ftpuser", "ftpuser", "/home/ftpuser/www/images", "/2018/08/14", "hello.png", fileInputStream); }
12. 通过 http://192.168.88.142/images/2018/08/14/hello.png 来访问 nginx 中的图片