├── script ├── client ├── client_second ├── tracker ├── storage ├── storage_second ├── tracker_second ├── 运行说明.md └── mkdir ├── 目录结构.md ├── dockerfile ├── 说明.md ├── Dockerfile_download ├── 配置 ├── Dockerfile_tracker ├── Dockerfile_storage └── nginx_tracker ├── 运行命令 └── README.md /script/client: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker run -it --name client --net=host -v /home/fastdfs/client:/home/client storage 3 | -------------------------------------------------------------------------------- /目录结构.md: -------------------------------------------------------------------------------- 1 | dockerfile文件夹:构建镜像的dockerfile们 2 | 3 | script文件夹:镜像构建完成后,将命令制作成为脚本的形式 4 | 5 | 运行命令:这些命令构成了运行脚本,可以直接在命令行选择敲入这些命令,也可以直接运行script文件夹中的脚本 6 | -------------------------------------------------------------------------------- /script/client_second: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker start client 3 | docker exec client fdfs_test /home/fastdfs/fastdfs-5.05/conf/client.conf upload /home/client/test.jpg 4 | -------------------------------------------------------------------------------- /script/tracker: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker run -it --name tracker --net=host -v /home/fastdfs/fdfs_conf:/home/fastdfs/fastdfs-5.05/conf/ -v /home/fastdfs/nginx_conf/tracker:/usr/local/nginx/conf/ tracker 3 | -------------------------------------------------------------------------------- /dockerfile/说明.md: -------------------------------------------------------------------------------- 1 | 先用dockerfile_download构建基础镜像,然后在该镜像的基础上运行dockerfile_tracker以及dockerfile_storage构建tracker以及storage镜像 2 | 3 | 构建好镜像后,可以按照配置文档进行进一步的配置,其中,由于tracker节点的nginx配置比较繁琐,所以将其提取出来,其配置文档为nginx_tracker 4 | -------------------------------------------------------------------------------- /script/storage: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker run -it --name storage --net=host -v /home/fastdfs/fdfs_conf:/home/fastdfs/fastdfs-5.05/conf/ -v /home/fastdfs/nginx_conf/storage:/usr/local/nginx/conf -v /home/fastdfs/etc_conf:/etc/fdfs storage 3 | -------------------------------------------------------------------------------- /script/storage_second: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker start storage 3 | docker exec storage fdfs_storaged /home/fastdfs/fastdfs-5.05/conf/storage.conf 4 | docker exec storage /usr/local/nginx/sbin/nginx 5 | docker exec storage cat /usr/local/nginx/logs/error.log 6 | docker exec storage netstat -ant | grep 23000 7 | docker exec storage cat /home/fastdfs_file/logs/storaged.log 8 | -------------------------------------------------------------------------------- /script/tracker_second: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | docker start tracker 3 | docker exec tracker fdfs_trackerd /home/fastdfs/fastdfs-5.05/conf/tracker.conf 4 | docker exec tracker /usr/local/nginx/sbin/nginx 5 | docker exec tracker cat /usr/local/nginx/logs/error.log 6 | docker exec tracker netstat -ant | grep 22122 7 | docker exec tracker cat /home/fastdfs_file/logs/trackerd.log 8 | -------------------------------------------------------------------------------- /dockerfile/Dockerfile_download: -------------------------------------------------------------------------------- 1 | FROM ubuntu 2 | MAINTAINER LionHeart 3 | ENV REFRESHED_AT 2015-04-19 4 | RUN apt-get update 5 | RUN apt-get install -y make 6 | RUN apt-get install -y libc6 7 | RUN apt-get install -y libc6-dev 8 | RUN apt-get install -y g++ 9 | RUN apt-get install -y build-essential 10 | RUN apt-get install unzip 11 | RUN apt-get -y install libpcre3 libpcre3-dev 12 | RUN apt-get -y install ruby zlib1g zlib1g.dev 13 | -------------------------------------------------------------------------------- /script/运行说明.md: -------------------------------------------------------------------------------- 1 | 鉴于需要做的配置以及需要执行的命令太多,我做了一些脚本,这是脚本的执行说明文档。 2 | 3 | 脚本内的所有tracker节点的镜像名称都为tracker,storage节点的镜像名称为storage,client客户端的镜像名称为client。 4 | 5 | fastdfs配置文件的存放地址为/home/fastdfs/fdfs_conf 6 | 7 | storage节点/etc/fdfs对应的存放地址为/home/fastdfs/etc_conf 8 | 9 | storage以及tracker节点nginx服务器配置对应的存放地址分别为: 10 | 11 | /home/fastdfs/nginx_conf/storage /home/fastdfs/nginx_conf/tracker 12 | 13 | 数据文件的所有存放地址为/home/fastdfs/fastdfs_file 14 | 15 | 需要上传数据客户端的文件存放地址为/home/fastdfs/client 16 | 17 | 18 | 脚本的执行顺序为: 19 | 20 | ./mkdir 21 | 22 | ./tracker 23 | 24 | ./tracker_second 25 | 26 | ./storage 27 | 28 | ./storage_second 29 | 30 | (如果需要进行测试,则可执行如下脚本) 31 | 32 | ./client 33 | 34 | ./client_second 35 | -------------------------------------------------------------------------------- /script/mkdir: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | mkdir -p /home/fastdfs/nginx_conf 3 | mkdir -p /home/fastdfs/client 4 | chmod +x client 5 | chmod +x client_second 6 | chmod +x tracker 7 | chmod +x tracker_second 8 | chmod +x storage 9 | chmod +x storage_second 10 | docker run -d --name trackerconfig tracker 11 | docker run -d --name storageconfig storage 12 | docker cp storageconfig:/home/fastdfs/fastdfs-5.05/conf /home/fastdfs 13 | mv /home/fastdfs/conf /home/fastdfs/fdfs_conf 14 | docker cp trackerconfig:/usr/local/nginx/conf /home/fastdfs/nginx_conf 15 | mv /home/fastdfs/nginx_conf/conf /home/fastdfs/nginx_conf/tracker 16 | docker cp storageconfig:/usr/local/nginx/conf /home/fastdfs/nginx_conf 17 | mv /home/fastdfs/nginx_conf/conf /home/fastdfs/nginx_conf/storage 18 | docker cp storageconfig:etc/fdfs /home/fastdfs 19 | mv /home/fastdfs/fdfs /home/fastdfs/etc_conf 20 | docker cp storageconfig:/home/fastdfs_file /home/fastdfs 21 | -------------------------------------------------------------------------------- /dockerfile/配置: -------------------------------------------------------------------------------- 1 | Storage配置: 2 | 3 | /home/fastdfs/fastdfs-5.05/conf/storage.conf的配置 4 | 5 | base_path=/home/fastdfs_file 修改存放文件的路径,该路径必须存在 6 | store_path0=/home/fastdfs_file 这是你的storage的文件放置路径 7 | tracker_server=192.168.1.1:22122 此处为traker服务器的ip地址,按照实际情况自己填写 8 | 9 | Client.conf 10 | 11 | base_path=/home/fastdfs_file 12 | tracker_server=192.168.1.1:22122 同上 13 | 14 | 15 | 16 | /usr/local/nginx/conf/nginx.conf的配置 17 | 18 | server { 19 | listen 8888; 20 | server_name localhost; 21 | 22 | location /M00 { 23 | root /home/fastdfs_file/data; 24 | ngx_fastdfs_module; 25 | } 26 | ...... 27 | } 28 | 29 | 做一个软链接 30 | ln -s /home/fastdfs_file/data /home/fastdfs_file/data/M00 31 | 32 | 修改文件配置 /etc/fdfs/mod_fastdfs.conf 33 | 34 | base_path=/home/fastdfs_file 35 | tracker_server=127.0.0.1:22122 同上,写上tracker的ip 36 | store_path0=/home/fastdfs_file 37 | url_have_group_name = true 此处必须设置为true,因为url中必须要有组名存在 38 | 39 | Tracker配置 40 | 41 | /home/fastdfs/fastdfs-5.05/conf/tracker.conf的配置 42 | 43 | base_path=/home/fastdfs_file 44 | -------------------------------------------------------------------------------- /dockerfile/Dockerfile_tracker: -------------------------------------------------------------------------------- 1 | FROM lionheart/ubuntu 2 | MAINTAINER LionHeart 3 | ENV REFRESHED_AT 2015-05-16 4 | RUN mkdir -p /home/fastdfs 5 | RUN mkdir -p /home/fastdfs_file/data 6 | RUN ln -s /home/fastdfs_file/data /home/fastdfs_file/data/M00 7 | WORKDIR /home/fastdfs 8 | ADD file/fastdfs-5.05.tar.gz /home/fastdfs 9 | ADD file/libfastcommon-master.zip /home/fastdfs/ 10 | ADD file/nginx-1.6.3.tar.gz /home/fastdfs 11 | ADD file/ngx_cache_purge-2.3.tar.gz /home/fastdfs 12 | RUN unzip libfastcommon-master.zip 13 | WORKDIR /home/fastdfs/libfastcommon-master 14 | RUN ./make.sh 15 | RUN ./make.sh install 16 | WORKDIR /home/fastdfs/fastdfs-5.05 17 | RUN ./make.sh 18 | RUN ./make.sh install 19 | WORKDIR /home/fastdfs/nginx-1.6.3 20 | RUN ./configure --add-module=/home/fastdfs/ngx_cache_purge-2.3 21 | RUN make 22 | RUN make install 23 | WORKDIR /etc/ld.so.conf.d/ 24 | RUN touch libfastcommon.conf 25 | RUN echo "/usr/lib64/" >> libfastcommon.conf 26 | RUN /sbin/ldconfig -v 27 | RUN cp /home/fastdfs/fastdfs-5.05/conf/http.conf /etc/fdfs/ 28 | RUN cp /home/fastdfs/fastdfs-5.05/conf/mime.types /etc/fdfs/ 29 | WORKDIR /home/fastdfs/fastdfs-5.05 30 | EXPOSE 80 31 | -------------------------------------------------------------------------------- /dockerfile/Dockerfile_storage: -------------------------------------------------------------------------------- 1 | FROM lionheart/ubuntu 2 | MAINTAINER LionHeart 3 | ENV REFRESHED_AT 2015-05-16 4 | RUN mkdir -p /home/fastdfs 5 | RUN mkdir -p /home/fastdfs_file/data 6 | RUN mkdir -p /home/client 7 | RUN ln -s /home/fastdfs_file/data /home/fastdfs_file/data/M00 8 | WORKDIR /home/fastdfs 9 | ADD file/fastdfs-5.05.tar.gz /home/fastdfs 10 | ADD file/libfastcommon-master.zip /home/fastdfs/ 11 | ADD file/fastdfs-nginx-module-master.zip /home/fastdfs/ 12 | ADD file/nginx-1.6.3.tar.gz /home/fastdfs 13 | RUN unzip libfastcommon-master.zip 14 | RUN unzip fastdfs-nginx-module-master.zip 15 | WORKDIR /home/fastdfs/libfastcommon-master 16 | RUN ./make.sh 17 | RUN ./make.sh install 18 | WORKDIR /home/fastdfs/fastdfs-5.05 19 | RUN ./make.sh 20 | RUN ./make.sh install 21 | WORKDIR /home/fastdfs/nginx-1.6.3 22 | RUN ./configure --add-module=/home/fastdfs/fastdfs-nginx-module-master/src 23 | RUN make 24 | RUN make install 25 | WORKDIR /etc/ld.so.conf.d/ 26 | RUN touch libfastcommon.conf 27 | RUN echo "/usr/lib64/" >> libfastcommon.conf 28 | RUN /sbin/ldconfig -v 29 | RUN cp /home/fastdfs/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/ 30 | RUN cp /home/fastdfs/fastdfs-5.05/conf/http.conf /etc/fdfs/ 31 | RUN cp /home/fastdfs/fastdfs-5.05/conf/mime.types /etc/fdfs/ 32 | WORKDIR /home/fastdfs/fastdfs-5.05 33 | EXPOSE 8888 34 | -------------------------------------------------------------------------------- /运行命令: -------------------------------------------------------------------------------- 1 | Tracker 2 | 3 | docker run -it --name tracker --net=host 4 | -v /home/fastdfs/fdfs_conf:/home/fastdfs/fastdfs-5.05/conf/ 5 | -v /home/fastdfs/nginx_conf/tracker:/usr/local/nginx/conf 6 | tracker 7 | exit 8 | docker start tracker 9 | docker exec tracker fdfs_trackerd /home/fastdfs/fastdfs-5.05/conf/tracker.conf 10 | docker exec tracker /usr/local/nginx/sbin/nginx 11 | docker exec tracker cat /usr/local/nginx/logs/error.log 12 | docker exec tracker netstat -ant | grep 22122 13 | docker exec tracker cat /home/fastdfs_file/logs/trackerd.log 14 | 15 | 16 | Storage 17 | 18 | docker run -it --name storage --net=host 19 | -v /home/fastdfs/fdfs_conf:/home/fastdfs/fastdfs-5.05/conf/ 20 | -v /home/fastdfs/nginx_conf/storage:/usr/local/nginx/conf 21 | -v /home/fastdfs/etc_conf:/etc/fdfs 22 | storage 23 | exit 24 | docker start storage 25 | docker exec storage fdfs_storaged /home/fastdfs/fastdfs-5.05/conf/storage.conf 26 | docker exec storage /usr/local/nginx/sbin/nginx 27 | docker exec storage cat /usr/local/nginx/logs/error.log 28 | docker exec storage netstat -ant | grep 23000 29 | docker exec storage cat /home/fastdfs_file/logs/storaged.log 30 | 31 | 32 | Client 33 | 34 | docker run -it --name client --net=host 35 | -v /home/fastdfs/client:/home/client 36 | storage 37 | exit 38 | docker start client 39 | docker exec client fdfs_test /home/fastdfs/fastdfs-5.05/conf/client.conf upload /home/client/test.jpg 40 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # fastdfsOnDocker 2 | 该文档是构建fastdfs的tracker节点以及storage节点镜像的相关说明。 3 | 4 | fastdfs是一个开源的分布式文件系统,其主要分为tracker节点和storage节点,本镜像部署了storage节点,并在镜像内构建了一个nginx服务器,支持http服务。在docker的环境中,tracker节点部署在了与storage节点相同的服务器上。在构建服务前,需要更改其具体的配置文件。在运行之前,请先下载如下文件: 5 | 6 | fastdfs-5.05.tar.gz 7 | 8 | libfastcommon-master.zip 9 | 10 | fastdfs-nginx-module-master.zip 11 | 12 | nginx-1.6.3.tar.gz 13 | 14 | ngx_cache_purge-2.3.tar.gz 15 | 16 | 其中前三个压缩包可以在fastdfs的github上下载到,nginx能去官网下载,最后一个可以直接百度,注意下载最新的版本即2.3,否则会构建失败,然后在Dockerfile所在的目录下构建一个文件夹为file,将这些压缩包放置在file中。 17 | 18 | 下载完所有文件后,就可以构建镜像或者直接从dockerhub上pull镜像了,dockerhub上的镜像名称为fastdfs_tracker:complete以及fastdfs_storage:complete。也推荐从alauda.cn来获取镜像,因为速度很快,在alauda.cn的镜像名称为index.alauda.cn/lionheart/fastdfs_storage:complete以及index.alauda.cn/lionheart/fastdfs_tracker:latest。如果直接pull下来镜像,那么不需要进行过多的配置,只需要修改tracker,storage节点的ip地址即可。如果是以dockerfile的方式构建镜像,那么你需要参考dockerfile中的配置文件已经说明文件来进行相应的配置。我所构建的镜像是部署在一台服务器上的tracker以及storage节点,如果你需要额外的配置,即配置在多台服务器上的storage节点,那么你可能需要安装pipework以让docker支持容器间的网络通信,具体的配置请参照该文档 http://wenku.baidu.com/link?url=7p3i2ev79UnCGAsbYX9iYO78PN8IAKpZdvU-VOxZRGCEqgyR8Nrvr129Dg8yTjGWAZNR945gLwf1Kv9DvJmaAMSCyxoZuop8d3qvYl1OdHy 19 | 20 | 如果你需要从dockerfile构建自己的镜像,那么请详细阅读dockerfile文件夹以及script文件夹中的说明文档,按照说明文档的指示来进行你的构建工作。 21 | 22 | 如下是每条语句的具体解释,你可以根据自己的要求来更改这些运行语句 23 | 24 | 先运行语句 25 | 26 | docker run -d --name trackerconfig tracker 27 | 28 | (trackerconfig为容器名,可为任意名字,用完后会删掉,tracker为tag后的镜像名称,也可以为其他的名称) 29 | 30 | docker run -d --name storageconfig storage 31 | 32 | (同上面的容器一样,也是用后会删掉) 33 | 34 | 创建 /home/fastdfs文件夹 35 | 36 | mkdir -p /home/fastdfs/nginx_conf 37 | 38 | mkdir -p /home/fastdfs/client 39 | 40 | 从容器中拷贝fastdfs的配置文件目录到宿主机,并将该目录重命名为fdfs_conf 41 | 42 | docker cp storageconfig:/home/fastdfs/fastdfs-5.05/conf /home/fastdfs 43 | 44 | mv /home/fastdfs/conf /home/fastdfs/fdfs_conf 45 | 46 | 从容器中拷贝tracker节点的nginx配置文件目录到宿主机,并将该目录重命名为tracker 47 | 48 | docker cp trackerconfig:/home/fastdfs/fastdfs-5.05/conf /home/fastdfs/nginx_conf 49 | 50 | mv /home/fastdfs/nginx_conf/conf /home/fastdfs/nginx_conf/tracker 51 | 52 | 从容器中拷贝storage节点的nginx配置文件目录到宿主机,并将该目录重命名为storage 53 | 54 | docker cp storageconfig:/home/fastdfs/fastdfs-5.05/conf /home/fastdfs/nginx_conf 55 | 56 | mv /home/fastdfs/nginx_conf/conf /home/fastdfs/nginx_conf/storage 57 | 58 | 从容器中拷贝fastdfs的配置文件目录到宿主机,并将该目录重命名为etc_conf 59 | 60 | docker cp storageconfig:/home/fastdfs/fastdfs-5.05/conf /home/fastdfs 61 | 62 | mv /home/fastdfs/conf /home/fastdfs/etc_conf 63 | 64 | 从容器中拷贝fastdfs的存储文件目录到宿主机 65 | 66 | docker cp storageconfig:/home/fastdfs_file /home/fastdfs 67 | 68 | 接下来修改配置文件 69 | 70 | 进入目录/home/fastdfs/fdfs_conf打开storage.conf文件,修改如下 71 | 72 | tracker_server=ipaddress:22122 73 | 74 | (ipaddress为具体的ip地址,为你所部署的该节点的ip地址,如192.168.0.1,该ip地址不能为localhost或者127.0.0.1,如果将tracker和storage节点部署在一台服务器上,那么就用其对外公开的ip地址来代替) 75 | 76 | 进入目录/home/fastdfs/fdfs_conf打开client.conf文件,修改如下 77 | 78 | tracker_server=ipaddress:22122 79 | 80 | 运行语句如下所示: 81 | 82 | tracker节点: 83 | 84 | docker run -it --name tracker --net=host -v /home/fastdfs/fdfs_conf:/home/fastdfs/fastdfs-5.05/conf/ -v /home/fastdfs/nginx_conf/tracker:/usr/local/nginx/conf tracker 85 | 86 | 此处会进入docker容器,需要输入exit命令,下面的节点也是如此,不再赘述 87 | 88 | docker start tracker 89 | 90 | docker exec tracker fdfs_trackerd /home/fastdfs/fastdfs-5.05/conf/tracker.conf 91 | 92 | docker exec tracker /usr/local/nginx/sbin/nginx 93 | 94 | storage节点: 95 | 96 | docker run -it --name storage --net=host -v /home/fastdfs/fdfs_conf:/home/fastdfs/fastdfs-5.05/conf/ -v /home/fastdfs/nginx_conf/storage:/usr/local/nginx/conf -v /home/fastdfs/etc_conf:/etc/fdfs storage 97 | 98 | docker start storage 99 | 100 | docker exec storage fdfs_storaged /home/fastdfs/fastdfs-5.05/conf/storage.conf 101 | 102 | docker exec storage /usr/local/nginx/sbin/nginx 103 | 104 | 配置完成后,我们可以进行测试,fastdfs提供了一个测试用的client工具,所以可以创建一个client容器,进行测试。测试前要在/home/client文件夹下面放一个图片,起名为test.jpg。 105 | 106 | docker run -it --name client --net=host -v /home/fastdfs/client:/home/client storage 107 | 108 | docker start client 109 | 110 | docker exec client fdfs_test /home/fastdfs/fastdfs-5.05/conf/client.conf upload /home/client/test.jpg 111 | 112 | 然后会返回一个url值,如下所示 113 | 114 | http://192.168.1.107/group1/M00/00/00/wKgBa1Vd7AyABRFaAAbVsieNsu4588_big.jpg 115 | 116 | 最后在浏览器输入url值,如果是部署在服务器上,需要加上服务器tracker节点的端口号,本docker镜像默认的tracker节点的端口号为80,storage节点的端口号为8888,如果是本机部署,则直接用localhost加端口号,如果能够显示出来图像,则证明配置成功。 117 | -------------------------------------------------------------------------------- /dockerfile/nginx_tracker: -------------------------------------------------------------------------------- 1 | #user nobody; 2 | worker_processes 1; 3 | 4 | #error_log logs/error.log; 5 | #error_log logs/error.log notice; 6 | #error_log logs/error.log info; 7 | 8 | #pid logs/nginx.pid; 9 | 10 | 11 | events { 12 | worker_connections 65535; 13 | } 14 | 15 | 16 | http { 17 | include mime.types; 18 | 19 | default_type application/octet-stream; 20 | 21 | #!####################################### 22 | 23 | server_names_hash_bucket_size 128; 24 | 25 | client_header_buffer_size 32k; 26 | 27 | large_client_header_buffers 4 32k; 28 | 29 | client_max_body_size 300m; 30 | 31 | sendfile on; 32 | 33 | tcp_nopush on; 34 | 35 | proxy_redirect off; 36 | 37 | proxy_set_header Host $http_host; 38 | 39 | proxy_set_header X-Real-IP $remote_addr; 40 | 41 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 42 | 43 | proxy_connect_timeout 90; 44 | 45 | proxy_send_timeout 90; 46 | 47 | proxy_read_timeout 90; 48 | 49 | proxy_buffer_size 16k; 50 | 51 | proxy_buffers 4 64k; 52 | 53 | proxy_busy_buffers_size 128k; 54 | 55 | proxy_temp_file_write_size 128k; 56 | 57 | proxy_cache_path /home/fastdfs/proxy_cache 58 | levels=1:2 59 | 60 | keys_zone=http-cache:500m max_size=10g inactive=30d; 61 | 62 | proxy_temp_path /home/fastdfs/proxy_cache/tmp; 63 | 64 | #!############################################# 65 | 66 | #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 67 | # '$status $body_bytes_sent "$http_referer" ' 68 | # '"$http_user_agent" "$http_x_forwarded_for"'; 69 | 70 | #access_log logs/access.log main; 71 | 72 | #sendfile on; 73 | #tcp_nopush on; 74 | 75 | #keepalive_timeout 0; 76 | keepalive_timeout 65; 77 | 78 | #gzip on; 79 | 80 | upstream fdfs_group1 { 81 | 82 | server 192.168.1.107:8888 weight=1 max_fails=2 fail_timeout=30s; 83 | 84 | } 85 | server { 86 | listen 80; 87 | server_name localhost; 88 | 89 | location /group1/M00 { 90 | 91 | proxy_next_upstream http_502 http_504 error timeout invalid_header; 92 | 93 | proxy_cache http-cache; 94 | 95 | proxy_cache_valid 200 304 12h; 96 | 97 | proxy_cache_key $uri$is_args$args; 98 | 99 | proxy_pass http://fdfs_group1; 100 | 101 | expires 30d; 102 | 103 | } 104 | 105 | #charset koi8-r; 106 | 107 | #access_log logs/host.access.log main; 108 | 109 | location / { 110 | root html; 111 | index index.html index.htm; 112 | } 113 | 114 | location ~ /purge(/.*) { 115 | 116 | allow 127.0.0.1; 117 | 118 | allow 172.16.0.0/16; 119 | 120 | deny all; 121 | 122 | proxy_cache_purge http-cache $1$is_args$args; 123 | 124 | } 125 | #error_page 404 /404.html; 126 | 127 | # redirect server error pages to the static page /50x.html 128 | # 129 | error_page 500 502 503 504 /50x.html; 130 | location = /50x.html { 131 | root html; 132 | } 133 | 134 | # proxy the PHP scripts to Apache listening on 127.0.0.1:80 135 | # 136 | #location ~ \.php$ { 137 | # proxy_pass http://127.0.0.1; 138 | #} 139 | 140 | # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 141 | # 142 | #location ~ \.php$ { 143 | # root html; 144 | # fastcgi_pass 127.0.0.1:9000; 145 | # fastcgi_index index.php; 146 | # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 147 | # include fastcgi_params; 148 | #} 149 | 150 | # deny access to .htaccess files, if Apache's document root 151 | # concurs with nginx's one 152 | # 153 | #location ~ /\.ht { 154 | # deny all; 155 | #} 156 | } 157 | 158 | 159 | # another virtual host using mix of IP-, name-, and port-based configuration 160 | # 161 | #server { 162 | # listen 8000; 163 | # listen somename:8080; 164 | # server_name somename alias another.alias; 165 | 166 | # location / { 167 | # root html; 168 | # index index.html index.htm; 169 | # } 170 | #} 171 | 172 | 173 | # HTTPS server 174 | # 175 | #server { 176 | # listen 443 ssl; 177 | # server_name localhost; 178 | 179 | # ssl_certificate cert.pem; 180 | # ssl_certificate_key cert.key; 181 | 182 | # ssl_session_cache shared:SSL:1m; 183 | # ssl_session_timeout 5m; 184 | 185 | # ssl_ciphers HIGH:!aNULL:!MD5; 186 | # ssl_prefer_server_ciphers on; 187 | 188 | # location / { 189 | # root html; 190 | # index index.html index.htm; 191 | # } 192 | #} 193 | 194 | } 195 | --------------------------------------------------------------------------------