资讯专栏INFORMATION COLUMN

Ngine X搭建文件服务器

davidac / 3002人阅读

摘要:前言是一种反向代理服务器什么是反向代理服务器正向代理指客户端通过下载特定服务器代理软件,将请求转发到代理服务器,再转发到接口服务器反向代理指服务端去使用软件使之扮演客户端角色,创建一个虚拟的服务器,把真正客户端的请求通过虚拟服务器转发到接口

前言

nginx是一种反向代理服务器
什么是反向代理服务器?
正向代理:指客户端通过下载特定服务器代理软件,将请求转发到代理服务器,再转发到接口服务器
反向代理:指服务端去使用软件使之扮演客户端角色,创建一个虚拟的服务器,把真正客户端的请求通过虚 拟服务器转发到接口服务器

所以说nginx是安装在服务端的一种代理服务器

nginx的安装

博主这里介绍的安装方法是在CentOS6.9基础上:
首先安装一些编译软件和指定库,CentOS原生系统不能完全编译nginx

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

去官网把.tar.gz为后缀,稳定的nginx版本下载到CentOS服务器上

wget http://nginx.org/en/download....
tar -xf ...

编译并且安装:

#编译:
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module
#安装:
make && make install

如此这般,nginx在服务器上的部署已经完毕
安装的目录在/usr/local/nginx路径下

为了操作方便,我们直接配置一些指定命令来启动和关闭nginx:
第一步,打开init.d下的nginx文件:

vim /etc/init.d/nginx

复制下面代码到nginx文件中,并且:wq保存:

#!/bin/bash  
# nginx Startup script for the Nginx HTTP Server  
#  
# chkconfig: - 85 15  
# description: Nginx is a high-performance web and proxy server.  
# It has a lot of features, but it"s not for everyone.  
# processname: nginx  
# pidfile: /var/run/nginx.pid  
# config: /usr/local/nginx/conf/nginx.conf  
nginxd=/usr/local/nginx/sbin/nginx  
nginx_config=/usr/local/nginx/conf/nginx.conf  
nginx_pid=/usr/local/nginx/nginx.pid  
 
RETVAL=0  
prog="nginx" 
 
# Source function library.  
. /etc/rc.d/init.d/functions  
 
# Source networking configuration.  
. /etc/sysconfig/network  
 
# Check that networking is up.  
[ ${NETWORKING} = "no" ] && exit 0  
 
[ -x $nginxd ] || exit 0  
 
 
# Start nginx daemons functions.  
start() {  
 
if [ -e $nginx_pid ];then 
   echo "nginx already running...." 
   exit 1  
fi  
 
   echo -n $"Starting $prog: " 
   daemon $nginxd -c ${nginx_config}  
   RETVAL=$?  
   echo  
   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx  
   return $RETVAL  
 
}  
 
 
# Stop nginx daemons functions.  
stop() {  
        echo -n $"Stopping $prog: " 
        killproc $nginxd  
        RETVAL=$?  
        echo  
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid  
}  
 
 
# reload nginx service functions.  
reload() {  
 
    echo -n $"Reloading $prog: " 
 $nginxd -s reload  
    #if your nginx version is below 0.8, please use this command: "kill -HUP `cat ${nginx_pid}`" 
    RETVAL=$?  
    echo  
 
}  
 
# See how we were called.  
case "$1" in 
start)  
        start  
        ;;  
 
stop)  
        stop  
        ;;  
 
reload)  
        reload  
        ;;  
 
restart)  
        stop  
        start  
        ;;  
 
status)  
        status $prog  
        RETVAL=$?  
        ;;  
*)  
        echo $"Usage: $prog {start|stop|restart|reload|status|help}" 
        exit 1  
esac  
 
exit $RETVAL

执行nginx文件:

chmod 755 /etc/init.d/nginx

OK,先我们能使用service nginx start/stop来启动/关闭nginx
如果出现nginx: [emerg] getpwnam(“www”) failed是因为用户组和用户问题
输入一下代码便可:

/usr/sbin/groupadd -f www
/usr/sbin/useradd -g www www
nginx的使用

首先查看端口情况:

netstat -ntlp

看80端口是否被占用(阿里云的服务器请打开安全组):
如果80端口占用则杀死该进程,不想杀死进程,就在nginx.conf里修改nginx默认端口

nginx的使用都在一个叫nginx.conf的文件中
如果你是按照我的安装方法安装,请打开目录:

/usr/local/nginx/conf

目录下便会出现nginx.conf文件,我们来看下文件中是什么(代码cat nginx.conf):

解释下:
server表示这里新建了一个代理服务器
listen表示这个代理服务器监听的端口是8080(我这里改过,默认是80端口)
server_name是代理服务器名(如果服务器有域名可以填写域名)
location才是我们真正需要自定义配置的地方:

root是我们需要代理的url路径
比如这里在location后面写了/
然后在root里面写了html
意思就是当我们在url中输入IP:端口/
nginx会帮我们代理成IP:端口/usr/local/nginx/html/

下面的index表示首页访问到index.html
因为/usr/local/nginx/html/路径下nginx在安装时创建了一个index.html(你可以打开目标路径看下)
所以上面截图中的server实际的操作结果就是:
访问IP:8080/index.html,会出现:

部署成文件服务器

我们指定服务器的一个端口,并且通过这个端口把服务器部署成文件服务器
依旧是在nginx.conf文件下,用vi打开。
添加下列代码:

server {
       listen 8079;
       server_name localhost;
       
       location ~ .*.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|ttf|woff|woff2|zip)$
            {
            root //picture;
            }
        }

每次修改都需要执行命令:service nginx start

很简单,我们新建一个名为localhost的代理服务器
它占用了8079这个端口
设置了可以读取的文件后缀名
并且这些文件是存储在centos根目录下的picture文件夹中

这里我做一个简单示例:

url:

页面展示:

tip:如果大家是按我的方法安装

启动nginx:service nginx start
停止nginx:service nginx stop

以上便是用nginx搭建一个简单的文件夹服务器
谢谢大家的阅读~记得点关注哦

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39713.html

相关文章

  • 使用Flask和MongoEngine开发一个博客系统

    摘要:目前,在开源社区已经拥有大量的优质扩展,所以,使用进行开发非常高效。使用和快速开发了一个简洁的博客系统。开发中主要使用一下扩展项目的部署参考之前的博文在上部署应用 Flask是一个微内核的轻量级Web开发框架,在尽量保持内核精简的同时,提供灵活的扩展机制方便开发。目前,Flask在开源社区已经拥有大量的优质扩展,所以,使用Flask进行web开发非常高效。使用Flask和MongoEn...

    wemall 评论0 收藏0
  • 使用Frp内网穿透快速搭建Web应用实践

    一、背景 笔者最近折腾docker服务比较多,这几天想把在内网中的服务搬到公网当中,但docker对内存要求较高,而云服务高内存的服务器又比较贵,家里虽然有一台旧笔记本内存还可以,但是没有公网IP地址,视乎还是没有办法,就在纠结的时候想起FRP这个内网穿透软件,重新回顾了一下搭建方法,发现搭建步骤较为简单,为了以后有所参考,所以把搭建步骤详细记录了下来。 二、操作步骤 配置服务端 配置客户端 检...

    fengxiuping 评论0 收藏0
  • 使用Frp内网穿透快速搭建Web应用实践

    一、背景 笔者最近折腾docker服务比较多,这几天想把在内网中的服务搬到公网当中,但docker对内存要求较高,而云服务高内存的服务器又比较贵,家里虽然有一台旧笔记本内存还可以,但是没有公网IP地址,视乎还是没有办法,就在纠结的时候想起FRP这个内网穿透软件,重新回顾了一下搭建方法,发现搭建步骤较为简单,为了以后有所参考,所以把搭建步骤详细记录了下来。 二、操作步骤 配置服务端 配置客户端 检...

    dadong 评论0 收藏0
  • CAS 5.2.x 单点登录 - 搭建服务端和客户端

    摘要:一简介单点登录,简称为,是目前比较流行的企业业务整合的解决方案之一。客户端拦截未认证的用户请求,并重定向至服务端,由服务端对用户身份进行统一认证。三搭建客户端在官方文档中提供了客户端样例,即。 一、简介 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系...

    Lin_YT 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<