安装

主要使用Nginx和vsftpd. 安装方面可以直接从nginx官网上下载,或者...

yum install nginx

如果没有yum源则需要自行添加再进行install.

yum install wget
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
yum check update

 
系统环境可能有少许差异,执行以下命令,把缺少的东西补上:

yum install gcc-c++
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

如果是从官网上下载的则进行如下操作:

[root@admin local]# cd /usr/local
[root@admin local]# tar -zxv -f nginx-1.7.7.tar.gz
[root@admin local]# rm -rf nginx-1.7.7.tar.gz
[root@admin local]# mv nginx-1.7.7 nginx
[root@admin local]# cd /usr/local/nginx

./configure时可能由于系统上的差异需要亲自指定一些东西,比如加上参数--with-openssl之类:

[root@admin nginx]# ./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf
[root@admin nginx]# make
[root@admin nginx]# make install  

 

修改防火墙配置:

vim /etc/sysconfig/iptables

添加配置项

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重启防火墙和网络配置

service iptables restart
/etc/init.d/network restart

安装vsftpd:

yum install vsftpd

配置

首先确认一下nginx指向的配置文件是/usr/local/nginx/conf/nginx.conf
执行:

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

对nginx没有做太复杂的配置,仅仅是创建了一个虚拟目录并打开了目录浏览功能。
我想访问http://localhost/apps时实际访问的路径是/home/appmanager/
首先我需要在nginx/html下创建一个apps文件夹,尽管实际访问的不是这个路径。

mkdir /usr/local/nginx/html/apps

然后修改nginx/conf/nginx.conf在默认的server里再添加一个location并指定实际路径:

location /apps/ {
root /home/appmanager/;
#alias ;
autoindex on;
#autoindex_exact_size off;
#autoindex_localtime on;
}

autoindex on便是打开浏览功能。   root则是将apps映射到/home/appmanager/apps/
当然,alias也可以实现我想要的效果,只是用法上和root稍有差异。

接着需要创建用户,就是上面配置文件中的appmanager。

useradd -d /home/appmanager -M appmanager

接着指定目录并加入权限

chown appmanager /home/appmanager
chmod 777 -R /home/appmanager

不知是什么原因,我第一次创建的用户的目录总是不生效,虽然多次进行usermod -d也毫无效果....

无论如何现在可以通过Jsch api访问了。

public static void main(String[] args) throws JSchException {
Session session = null;
ChannelSftp channelSftp = null;
try {
JSch.setLogger(new JSCHLogger());
JSch jsch = new JSch();
session = jsch.getSession("appmanager", "101.x.x.x", "22");
session.setPassword("password"); Properties config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect(); channelSftp = (ChannelSftp) session.openChannel("sftp");
channelSftp.connect(); } catch (JSchException | SftpException | IOException e) {
logger.error(e.getMessage(), e);
} finally {
if (channelSftp != null) {
channelSftp.disconnect();
}
if (session != null)
session.disconnect();
}
}

Nginx - 简易图片服务器的更多相关文章

  1. nginx配置图片服务器

    这几天研究了一下nginx配置图片服务器的相关内容,个人的一些收获与大家分享一下: Nginx是目前非常流行的web服务器,它起源于俄罗斯.它具有处理速度快,并发量大,占用资源极低等优点,尤其对于静态 ...

  2. Python中使用Flask、MongoDB搭建简易图片服务器

    主要介绍了Python中使用Flask.MongoDB搭建简易图片服务器,本文是一个详细完整的教程,需要的朋友可以参考下 1.前期准备 通过 pip 或 easy_install 安装了 pymong ...

  3. Nginx 搭建图片服务器

    Nginx 搭建图片服务器 本章内容通过Nginx 和 FTP 搭建图片服务器.在学习本章内容前,请确保您的Linux 系统已经安装了Nginx和Vsftpd. Nginx 安装:http://www ...

  4. Nginx搭建图片服务器

    Nginx搭建图片服务器 标签(空格分隔): linux,nginx Nginx常用命令 ./nginx 启动 ./nginx -s reload 重载配置文件 ./nginx -s stop|sta ...

  5. nginx 搭建图片服务器(windows 下,linux 下原理应该一样)

    作者的心声:很多知道的.用过的东西,不写下来,下次还要百度查询,浪费时间和精力,故本次写下学习笔记,方便下次查阅. 题外话:如有读者通过我这篇博客解决了工作上的难题,可以给个评论,让我一起分享你的喜悦 ...

  6. Nginx,Nginx 搭建图片服务器

    Nginx Nginx 概述 反向代理 工作流程 优点 1:保护了真实的web服务器,保证了web服务器的资源安全 2:节约了有限的IP地址资源 3:减少WEB服务器压力,提高响应速度 4:其他优点 ...

  7. 配置nginx的图片服务器

    user nginx; worker_processes 8; error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; pid ...

  8. Nginx 独立图片服务器的搭建

    为什么需要独立图片服务器? 如果你留心的话,可以发现,现在主流的网站都是有单独的图片服务器的,例如,人人网的为rrimg,淘宝的为taobaocdn,下面还有很多的二级域名. 独立的图片服务器有诸多好 ...

  9. 二、nginx搭建图片服务器

    接上篇:Nginx安装手册 cd /usr/local/nginx/conf/ 配置图片服务器 方法一.在配置文件server{}中location /{} 修改配置: #默认请求 location ...

随机推荐

  1. linux命令之网络管理命令(下)

    1.wget:命令行下载工具 该命令用于从网络上下载资料,可以直接从网络上下载自己所需要的资料. 参数 说明 -O(常用) 指定保存的文件名后下载文件 --limit-rate(常用) 限速下载 -c ...

  2. 并发编程---线程 ;python中各种锁

    一,概念 在传统操作系统中,每个进程有一个地址空间,而且默认就有一个控制线程 线程顾名思义,就是一条流水线工作的过程,一条流水线必须属于一个车间,一个车间的工作过程是一个进程 --车间负责把资源整合到 ...

  3. Ubuntu14.04安装libusb

    https://www.cnblogs.com/ettie999/p/8142973.html libuvc是一个跨平台的USB视频设备库,建立在libusb之上. 它能够对导出标准USB视频类(UV ...

  4. Springboot第二篇:与前端fetch通信(附springboot解决跨域方法)

    说到与前端通信,明白人都知道这章肯定会写两部分的东西啦. 关于后台 ①首先回顾前文,上一章环境搭建如图: ②我们在maven.example.controller下添加一个文件,并附上如图代码: ③: ...

  5. Angular material mat-icon 资源参考_Editor

    ul,li>ol { margin-bottom: 0 } dt { font-weight: 700 } dd { margin: 0 1.5em 1.5em } img { height: ...

  6. Go语言介绍

    Go语言简介 Go语言是谷歌2009发布的第二款开源编程语言. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程. Go ...

  7. python 反射和内置方法

    一.isinstance和issubclass class Foo: pass class Son(Foo): pass s = Son() #判断一个对象是不是这个类的对象,传两个参数(对象,类) ...

  8. HttpClient登陆后获取并携带cookies发起请求

    最近项目中,用到了登陆后获取并携带cookies发起请求的业务场景,现总结写出来备忘一下. 1.定义存取cookies信息的全局变量 public class HttpUtil { /** * 用来存 ...

  9. 2019.04.18 读书笔记 深入string

    整个.net中,最特殊的就是string类型了,它有着引用类型的特性,又有着值类型的操作方式,最特殊的是,它还有字符串池,一个字符串只会有一个实例(等下就推翻!). 鉴于之前的<==与Equal ...

  10. 在vue中import()语法不能传入变量

    解决办法: 一定要用变量的时候,可以通过字符串模板来提供部分信息给webpack:例如import(`./path/${myFile}`), 这样编译时会编译所有./path下的模块,但运行时确定my ...