Ngine X搭建文件服务器

前端之家收集整理的这篇文章主要介绍了Ngine X搭建文件服务器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

前言

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

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

Nginx的安装

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

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

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

编译并且安装:

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

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

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

  1. vim /etc/init.d/Nginx

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

  1. #!/bin/bash
  2. # Nginx Startup script for the Nginx HTTP Server
  3. #
  4. # chkconfig: - 85 15
  5. # description: Nginx is a high-performance web and proxy server.
  6. # It has a lot of features,but it's not for everyone.
  7. # processname: Nginx
  8. # pidfile: /var/run/Nginx.pid
  9. # config: /usr/local/Nginx/conf/Nginx.conf
  10. Nginxd=/usr/local/Nginx/sbin/Nginx
  11. Nginx_config=/usr/local/Nginx/conf/Nginx.conf
  12. Nginx_pid=/usr/local/Nginx/Nginx.pid
  13. RETVAL=0
  14. prog="Nginx"
  15. # Source function library.
  16. . /etc/rc.d/init.d/functions
  17. # Source networking configuration.
  18. . /etc/sysconfig/network
  19. # Check that networking is up.
  20. [ ${NETWORKING} = "no" ] && exit 0
  21. [ -x $Nginxd ] || exit 0
  22. # Start Nginx daemons functions.
  23. start() {
  24. if [ -e $Nginx_pid ];then
  25. echo "Nginx already running...."
  26. exit 1
  27. fi
  28. echo -n $"Starting $prog: "
  29. daemon $Nginxd -c ${Nginx_config}
  30. RETVAL=$?
  31. echo
  32. [ $RETVAL = 0 ] && touch /var/lock/subsys/Nginx
  33. return $RETVAL
  34. }
  35. # Stop Nginx daemons functions.
  36. stop() {
  37. echo -n $"Stopping $prog: "
  38. killproc $Nginxd
  39. RETVAL=$?
  40. echo
  41. [ $RETVAL = 0 ] && rm -f /var/lock/subsys/Nginx /var/run/Nginx.pid
  42. }
  43. # reload Nginx service functions.
  44. reload() {
  45. echo -n $"Reloading $prog: "
  46. $Nginxd -s reload
  47. #if your Nginx version is below 0.8,please use this command: "kill -HUP `cat ${Nginx_pid}`"
  48. RETVAL=$?
  49. echo
  50. }
  51. # See how we were called.
  52. case "$1" in
  53. start)
  54. start
  55. ;;
  56. stop)
  57. stop
  58. ;;
  59. reload)
  60. reload
  61. ;;
  62. restart)
  63. stop
  64. start
  65. ;;
  66. status)
  67. status $prog
  68. RETVAL=$?
  69. ;;
  70. *)
  71. echo $"Usage: $prog {start|stop|restart|reload|status|help}"
  72. exit 1
  73. esac
  74. exit $RETVAL

执行Nginx文件

  1. chmod 755 /etc/init.d/Nginx

OK,先我们能使用service Nginx start/stop来启动/关闭Nginx

Nginx的使用

首先查看端口情况:

  1. netstat -ntlp

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

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

  1. /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打开。
添加下列代码

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

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

这里我做一个简单示例:

url:

页面展示:

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

猜你在找的CentOS相关文章