天天看点

FastDFS+Nginx第2章 安装nginx模块

从  github下载安装包

<code>wget </code>

<code>https:</code><code>//github</code><code>.com</code><code>/happyfish100/libfastcommon/archive/V1</code><code>.0.35.</code><code>tar</code><code>.gz</code>

<a href="https://github.com/happyfish100/libfastcommon/archive/V1.0.35.tar.gz"></a>

解压安装包

<code>tar</code> <code>xf V1.0.35.</code><code>tar</code><code>.gz</code>

<code>cd</code> <code>libfastcommon-1.0.35/</code>

<code>.</code><code>/make</code><code>.sh</code>

<code>echo</code> <code>$?</code>

<code>.</code><code>/make</code><code>.sh </code><code>install</code>

编译安装完成

<code>wget https:</code><code>//github</code><code>.com</code><code>/happyfish100/fastdfs/archive/V5</code><code>.10.</code><code>tar</code><code>.gz</code>

<code>tar</code> <code>xf V5.10.</code><code>tar</code><code>.gz</code>

<code>cd</code> <code>fastdfs-5.10/</code>

<code>whereis</code> <code>fdfs_storaged</code>

<code>vim </code><code>/etc/init</code><code>.d</code><code>/fdfs_storaged</code>

<code>vim </code><code>/etc/init</code><code>.d</code><code>/fdfs_trackerd</code>

<code>whereis</code> <code>fdfs_trackerd</code>

创建数据文件存放位置

<code>mkdir</code> <code>-p </code><code>/data/fdfs_tracker</code>

<code>mkdir</code> <code>-p </code><code>/data/fdfs_storage</code>

<code>cd</code> <code>/etc/fdfs/</code>

<code> </code> 

<code>cp</code> <code>tracker.conf.sample tracker.conf</code>

<code>cp</code> <code>storage.conf.sample storage.conf</code>

修改配置文件

<code>mkdir</code> <code>/data/fdfs_tracker</code>

<code>先创建</code><code>mkdir</code> <code>/data/fdfs_storage/base</code> <code>/data/fdfs_storage/store</code>  <code>/data/fdfs_tracker</code>

<code>vim tracker.conf</code>

<code>base_path=</code><code>/data/fdfs_tracker</code>   <code>刚刚创建的目录</code>

<code>保存</code>

<code>vim storage.conf</code>

<code>base_path=</code><code>/data/fdfs_storage/base</code>      

<code>store_path0=</code><code>/data/fdfs_storage/store</code>  

<code>多节点</code>

<code>tracker_server=192.168.80.123:22122</code>

<code>tracker_server=192.168.80.201:22122</code>

查看配置

<code>[root@lanyezi fdfs]</code><code># grep --color '^[a-z]' /etc/fdfs/tracker.conf</code>

<code>disabled=</code><code>false</code>

<code>bind_addr=</code>

<code>port=22122</code>

<code>connect_timeout=30</code>

<code>network_timeout=60</code>

<code>base_path=</code><code>/data/fdfs_tracker</code>

<code>max_connections=256</code>

<code>accept_threads=1</code>

<code>work_threads=4</code>

<code>min_buff_size = 8KB</code>

<code>max_buff_size = 128KB</code>

<code>store_lookup=2</code>

<code>store_group=group2</code>

<code>store_server=0</code>

<code>store_path=0</code>

<code>download_server=0</code>

<code>reserved_storage_space = 10%</code>

<code>log_level=info</code>

<code>run_by_group=</code>

<code>run_by_user=</code>

<code>allow_hosts=*</code>

<code>sync_log_buff_interval = 10</code>

<code>check_active_interval = 120</code>

<code>thread_stack_size = 64KB</code>

<code>storage_ip_changed_auto_adjust = </code><code>true</code>

<code>storage_sync_file_max_delay = 86400</code>

<code>storage_sync_file_max_time = 300</code>

<code>use_trunk_file = </code><code>false</code>

<code>slot_min_size = 256</code>

<code>slot_max_size = 16MB</code>

<code>trunk_file_size = 64MB</code>

<code>trunk_create_file_advance = </code><code>false</code>

<code>trunk_create_file_time_base = 02:00</code>

<code>trunk_create_file_interval = 86400</code>

<code>trunk_create_file_space_threshold = 20G</code>

<code>trunk_init_check_occupying = </code><code>false</code>

<code>trunk_init_reload_from_binlog = </code><code>false</code>

<code>trunk_compress_binlog_min_interval = 0</code>

<code>use_storage_id = </code><code>false</code>

<code>storage_ids_filename = storage_ids.conf</code>

<code>id_type_in_filename = ip</code>

<code>store_slave_file_use_link = </code><code>false</code>

<code>rotate_error_log = </code><code>false</code>

<code>error_log_rotate_time=00:00</code>

<code>rotate_error_log_size = 0</code>

<code>log_file_keep_days = 0</code>

<code>use_connection_pool = </code><code>false</code>

<code>connection_pool_max_idle_time = 3600</code>

<code>http.server_port=8080</code>

<code>http.check_alive_interval=30</code>

<code>http.check_alive_type=tcp</code>

<code>http.check_alive_uri=</code><code>/status</code><code>.html</code>

<code>[root@lanyezi fdfs]</code><code># grep --color '^[a-z]' /etc/fdfs/storage.conf</code>

<code>group_name=group1</code>

<code>client_bind=</code><code>true</code>

<code>port=23000</code>

<code>heart_beat_interval=30</code>

<code>stat_report_interval=60</code>

<code>base_path=</code><code>/data/fdfs_storage/base</code>

<code>buff_size = 256KB</code>

<code>disk_rw_separated = </code><code>true</code>

<code>disk_reader_threads = 1</code>

<code>disk_writer_threads = 1</code>

<code>sync_wait_msec=50</code>

<code>sync_interval=0</code>

<code>sync_start_time=00:00</code>

<code>sync_end_time=23:59</code>

<code>write_mark_file_freq=500</code>

<code>store_path_count=1</code>

<code>store_path0=</code><code>/data/fdfs_storage/store</code>

<code>subdir_count_per_path=256</code>

<code>file_distribute_path_mode=0</code>

<code>file_distribute_rotate_count=100</code>

<code>fsync_after_written_bytes=0</code>

<code>sync_log_buff_interval=10</code>

<code>sync_binlog_buff_interval=10</code>

<code>sync_stat_file_interval=300</code>

<code>thread_stack_size=512KB</code>

<code>upload_priority=10</code>

<code>if_alias_prefix=</code>

<code>check_file_duplicate=0</code>

<code>file_signature_method=</code><code>hash</code>

<code>key_namespace=FastDFS</code>

<code>keep_alive=0</code>

<code>use_access_log = </code><code>false</code>

<code>rotate_access_log = </code><code>false</code>

<code>access_log_rotate_time=00:00</code>

<code>rotate_access_log_size = 0</code>

<code>file_sync_skip_invalid_record=</code><code>false</code>

<code>http.domain_name=</code>

<code>http.server_port=8888</code>

<code>[root@lanyezi fdfs]</code><code># /etc/init.d/fdfs_trackerd start</code>

<code>Starting FastDFS tracker server:</code>

<code>[root@lanyezi fdfs]</code><code># /etc/init.d/fdfs_storaged start</code>

<code>Starting FastDFS storage server:</code>

<code>[root@lanyezi fdfs]</code><code># [2017-10-19 20:56:40] ERROR - file: process_ctrl.c, line: 276, "/data/fdfs_storage/base" can't be accessed, error info: No such file or directory</code>

创建刚刚的文件

<code>mkdir</code> <code>/data/fdfs_storage/base</code> <code>/data/fdfs_storage/store</code>

查看有没有起来

<code>[root@lanyezi fdfs_storage]</code><code># netstat -lntup |grep fdfs</code>

<code>tcp        0      0 0.0.0.0:22122               0.0.0.0:*                   LISTEN      29525</code><code>/fdfs_trackerd</code>

<code>tcp        0      0 0.0.0.0:23000               0.0.0.0:*                   LISTEN      29567</code><code>/fdfs_storaged</code>

<code> </code><code>[root@master logs]</code><code># tailf /data/fdfs_tracker/logs/trackerd.log</code>

<code>[root@lanyezi fdfs]</code><code># cp client.conf.sample client.conf</code>

<code>vim client.conf</code>

<code>base_path=</code><code>/tmp</code>

测试上传一个文件

<code>[root@lanyezi fdfs]</code><code># fdfs_upload_file /etc/fdfs/client.conf /etc/passwd</code>

<code>group1</code><code>/M00/00/00/wKhQe1nopb6AAz7KAAAEyYPK5Fg0384170</code>

下载这个文件

<code>[root@lanyezi ~]</code><code># fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKhQe1nopb6AAz7KAAAEyYPK5Fg0384170</code>

对比完整性

<code>[root@lanyezi ~]</code><code># md5sum wKhQe1nopb6AAz7KAAAEyYPK5Fg0384170</code>

<code>d2daf23218e42ce37f799fa1316c8a7d  wKhQe1nopb6AAz7KAAAEyYPK5Fg0384170</code>

<code>[root@lanyezi ~]</code><code># md5sum /etc/passwd</code>

<code>d2daf23218e42ce37f799fa1316c8a7d  </code><code>/etc/passwd</code>

文件保存在这里 自动生成一个文件名

<code>ls</code> <code>/data/fdfs_storage/store/data/00/00/wKhQe1nopb6AAz7KAAAEyYPK5Fg0384170</code>

查看上传的文件的属性

<code>[root@master data]</code><code># fdfs_file_info /etc/fdfs/client.conf group1/M00/00/00/wKhQe1nopb6AAz7KAAAEyYPK5Fg0384170source storage id: 0</code>

<code>source</code> <code>ip address: 192.168.80.123</code>

<code>file</code> <code>create timestamp: 2017-10-19 21:16:46</code>

<code>file</code> <code>size: 1225</code>

<code>file</code> <code>crc32: 2211112024 (0x83CAE458)</code>

<code>在上传的文件的末尾追加</code>

<code>[root@master data]</code><code># echo "hello" &gt; append.txt</code>

<code>[root@master data]</code><code># echo "world" &gt; append2.txt</code>

<code>[root@master tmp]</code><code># fdfs_upload_appender /etc/fdfs/client.conf append.txt</code>

<code>group1</code><code>/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805</code><code>.txt</code>

<code>[root@master tmp]</code><code># fdfs_append_file /etc/fdfs/client.conf group1/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt</code>

<code>Usage: fdfs_append_file &lt;config_file&gt; &lt;appender_file_id&gt; &lt;local_filename&gt;</code>

<code>[root@master tmp]</code><code># fdfs_append_file /etc/fdfs/client.conf group1/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt append2.txt</code>

<code>[root@master tmp]</code><code># fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt</code>

<code>[root@master tmp]</code><code>#  cat wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt</code>

<code>hello</code>

<code>world</code>

删除一个文件

先查看属性

<code>[root@master tmp]</code><code># fdfs_file_info /etc/fdfs/client.conf group1/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt</code>

<code>source</code> <code>storage </code><code>id</code><code>: 0</code>

<code>source</code> <code>ip address: 192.168.80.201</code>

<code>file</code> <code>create timestamp: 2017-12-21 15:19:58</code>

<code>file</code> <code>size: 12</code>

<code>file</code> <code>crc32: 1998380320 (0x771CDD20)</code>

<code>[root@master tmp]</code><code># fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt   删除文件</code>

<code>[root@master tmp]</code><code># fdfs_file_info /etc/fdfs/client.conf group1/M00/00/00/wKhQyVo7YHuEXDxFAAAAAHcc3SA805.txt   再次查看已经没有</code>

<code>[2017-12-21 15:23:31] ERROR - </code><code>file</code><code>: tracker_proto.c, line: 48, server: 192.168.80.201:23000, response status 2 != 0</code>

<code>[2017-12-21 15:23:31] ERROR - </code><code>file</code><code>: ..</code><code>/client/storage_client</code><code>.c, line: 372, fdfs_recv_response fail, result: 2</code>

<code>query </code><code>file</code> <code>info fail, error no: 2, error info: No such </code><code>file</code> <code>or directory</code>

<code>[root@master tmp]</code><code># fdfs_monitor /etc/fdfs/client.conf</code>

<code>[2017-12-21 15:24:39] DEBUG - base_path=</code><code>/tmp</code><code>, connect_timeout=30, network_timeout=60, tracker_server_count=2, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server </code><code>id</code> <code>count: 0</code>

<code>server_count=2, server_index=1</code>

<code>tracker server is 192.168.80.201:22122</code>

<code>group count: 1</code>

<code>Group 1:</code>

<code>group name = group1</code>

<code>disk total space = 18356 MB</code>

<code>disk </code><code>free</code> <code>space = 11706 MB</code>

<code>trunk </code><code>free</code> <code>space = 0 MB</code>

<code>storage server count = 2</code>

<code>active server count = 2</code>

<code>storage server port = 23000</code>

<code>storage HTTP port = 8888</code>

<code>store path count = 1</code>

<code>subdir count per path = 256</code>

<code>current write server index = 0</code>

<code>current trunk </code><code>file</code> <code>id</code> <code>= 0</code>

<code>    </code><code>Storage 1:</code>

<code>        </code><code>id</code> <code>= 192.168.80.123</code>

<code>        </code><code>ip_addr = 192.168.80.123  ACTIVE</code>

<code>        </code><code>http domain =</code>

<code>        </code><code>version = 5.10</code>

<code>        </code><code>join</code> <code>time</code> <code>= 2017-10-19 20:58:00</code>

<code>        </code><code>up </code><code>time</code> <code>= 2017-10-19 21:08:59</code>

<code>        </code><code>total storage = 18356 MB</code>

<code>        </code><code>free</code> <code>storage = 15355 MB</code>

<code>        </code><code>upload priority = 10</code>

<code>        </code><code>store_path_count = 1</code>

<code>        </code><code>subdir_count_per_path = 256</code>

<code>        </code><code>storage_port = 23000</code>

<code>        </code><code>storage_http_port = 8888</code>

<code>        </code><code>current_write_path = 0</code>

<code>        </code><code>source</code> <code>storage </code><code>id</code> <code>= 192.168.80.201</code>

<code>        </code><code>if_trunk_server = 0</code>

<code>        </code><code>connection.alloc_count = 256</code>

<code>        </code><code>connection.current_count = 1</code>

<code>        </code><code>connection.max_count = 2</code>

<code>        </code><code>total_upload_count = 2</code>

<code>        </code><code>success_upload_count = 2</code>

<code>        </code><code>total_append_count = 0</code>

<code>        </code><code>success_append_count = 0</code>

<code>        </code><code>total_modify_count = 0</code>

<code>        </code><code>success_modify_count = 0</code>

<code>        </code><code>total_truncate_count = 0</code>

<code>        </code><code>success_truncate_count = 0</code>

<code>        </code><code>total_set_meta_count = 0</code>

<code>        </code><code>success_set_meta_count = 0</code>

<code>        </code><code>total_delete_count = 0</code>

<code>        </code><code>success_delete_count = 0</code>

<code>        </code><code>total_download_count = 2</code>

<code>        </code><code>success_download_count = 2</code>

<code>        </code><code>total_get_meta_count = 0</code>

<code>        </code><code>success_get_meta_count = 0</code>

<code>        </code><code>total_create_link_count = 0</code>

<code>        </code><code>success_create_link_count = 0</code>

<code>        </code><code>total_delete_link_count = 0</code>

<code>        </code><code>success_delete_link_count = 0</code>

<code>        </code><code>total_upload_bytes = 1231</code>

<code>        </code><code>success_upload_bytes = 1231</code>

<code>        </code><code>total_append_bytes = 0</code>

<code>        </code><code>success_append_bytes = 0</code>

<code>        </code><code>total_modify_bytes = 0</code>

<code>        </code><code>success_modify_bytes = 0</code>

<code>        </code><code>stotal_download_bytes = 1231</code>

<code>        </code><code>success_download_bytes = 1231</code>

<code>        </code><code>total_sync_in_bytes = 18</code>

<code>        </code><code>success_sync_in_bytes = 18</code>

<code>        </code><code>total_sync_out_bytes = 0</code>

<code>        </code><code>success_sync_out_bytes = 0</code>

<code>        </code><code>total_file_open_count = 7</code>

<code>        </code><code>success_file_open_count = 7</code>

<code>        </code><code>total_file_read_count = 2</code>

<code>        </code><code>success_file_read_count = 2</code>

<code>        </code><code>total_file_write_count = 5</code>

<code>        </code><code>success_file_write_count = 5</code>

<code>        </code><code>last_heart_beat_time = 2017-12-21 15:24:27</code>

<code>        </code><code>last_source_update = 2017-10-19 21:29:37</code>

<code>        </code><code>last_sync_update = 2017-10-19 21:37:31</code>

<code>        </code><code>last_synced_timestamp = 2017-12-21 15:23:28 (0s delay)</code>

<code>    </code><code>Storage 2:</code>

<code>        </code><code>id</code> <code>= 192.168.80.201</code>

<code>        </code><code>ip_addr = 192.168.80.201 (master.</code><code>test</code><code>.com)  ACTIVE</code>

<code>        </code><code>join</code> <code>time</code> <code>= 2017-12-21 14:51:52</code>

<code>        </code><code>up </code><code>time</code> <code>= 2017-12-21 14:51:52</code>

<code>        </code><code>free</code> <code>storage = 11706 MB</code>

<code>        </code><code>source</code> <code>storage </code><code>id</code> <code>=</code>

<code>        </code><code>total_append_count = 1</code>

<code>        </code><code>success_append_count = 1</code>

<code>        </code><code>total_delete_count = 1</code>

<code>        </code><code>success_delete_count = 1</code>

<code>        </code><code>total_download_count = 3</code>

<code>        </code><code>success_download_count = 3</code>

<code>        </code><code>total_upload_bytes = 12</code>

<code>        </code><code>success_upload_bytes = 12</code>

<code>        </code><code>total_append_bytes = 6</code>

<code>        </code><code>success_append_bytes = 6</code>

<code>        </code><code>stotal_download_bytes = 1249</code>

<code>        </code><code>success_download_bytes = 1249</code>

<code>        </code><code>total_sync_in_bytes = 1231</code>

<code>        </code><code>success_sync_in_bytes = 1231</code>

<code>        </code><code>total_file_open_count = 8</code>

<code>        </code><code>success_file_open_count = 8</code>

<code>        </code><code>total_file_read_count = 3</code>

<code>        </code><code>success_file_read_count = 3</code>

<code>        </code><code>last_heart_beat_time = 2017-12-21 15:24:29</code>

<code>        </code><code>last_source_update = 2017-12-21 15:23:28</code>

<code>        </code><code>last_sync_update = 2017-12-21 15:15:36</code>

<code>        </code><code>last_synced_timestamp = 2017-10-19 21:29:37 (0s delay)</code>

ls /home/fastdfs-5.10/php_client

FastDFS+Nginx第2章 安装nginx模块

<code>[root@master src]</code><code># pwd       </code>

<code>/usr/local/src</code>

<code>[root@master src]</code><code># wget http://nginx.org/download/nginx-1.10.3.tar.gz</code>

<code>[root@master src]</code><code># tar xf nginx-1.10.3.tar.gz</code>

<code>l[root@master src]</code><code># cd nginx-1.10.3</code>

<code>[root@master nginx-1.10.3]</code><code># ls</code>

<code>auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  </code><code>man</code>  <code>README  src</code>

<code>[root@master nginx-1.10.3]</code><code>#</code>

<code>https:</code><code>//github</code><code>.com</code><code>/happyfish100/fastdfs-nginx-module</code><code>.git</code>

<code>[root@master nginx-1.10.3]</code><code># git clone https://github.com/happyfish100/fastdfs-nginx-module.git</code>

<code>Initialized empty Git repository </code><code>in</code> <code>/usr/local/src/nginx-1</code><code>.10.3</code><code>/fastdfs-nginx-module/</code><code>.git/</code>

<code>remote: Counting objects: 76, </code><code>done</code><code>.</code>

<code>remote: Total 76 (delta 0), reused 0 (delta 0), pack-reused 76</code>

<code>Unpacking objects: 100% (76</code><code>/76</code><code>), </code><code>done</code><code>.</code>

<code>auto  CHANGES  CHANGES.ru  conf  configure  contrib  fastdfs-nginx-module  html  LICENSE  </code><code>man</code>  <code>README  src</code>

<code>[root@master nginx-1.10.3]</code><code># useradd  -s /sbin/nologin -M www</code>

<code>[root@master nginx-1.10.3]</code><code># ./configure --prefix=/usr/local/nginx-1.10.3 --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --add-module=./fastdfs-nginx-module/src/</code>

<code>[root@master nginx-1.10.3]</code><code># make</code>

<code>[root@master nginx-1.10.3]</code><code># make install</code>

编译的时候报错解决:将fastdfs升级到最新版本V5.11

<code>.</code><code>/fastdfs-nginx-module/src//common</code><code>.c: In </code><code>function</code> <code>‘fdfs_http_request_handler’:</code>

<code>.</code><code>/fastdfs-nginx-module/src//common</code><code>.c:1245: error: ‘FDFSHTTPParams’ has no member named ‘support_multi_range’</code>

<code>make</code><code>[1]: *** [objs</code><code>/addon/src/ngx_http_fastdfs_module</code><code>.o] Error 1</code>

<code>make</code><code>[1]: Leaving directory `</code><code>/usr/local/src/nginx-1</code><code>.10.2'</code>

<code>make</code><code>: *** [</code><code>install</code><code>] Error 2</code>

<code>cd</code> <code>..</code>

<code>wget https:</code><code>//github</code><code>.com</code><code>/happyfish100/fastdfs/archive/V5</code><code>.11.</code><code>tar</code><code>.gz</code>

<code>tar</code> <code>xf V5.11.</code><code>tar</code><code>.gz</code>

<code>cd</code> <code>fastdfs-5.11/</code>

重新编译

<code>cd</code> <code>nginx-1.10.2</code>

成功

<code>[root@lanyezi nginx-1.10.3]</code><code># ln -s /usr/local/nginx-1.10.3/ /usr/local/nginx</code>

<code>[root@lanyezi src]</code><code># pwd</code>

<code>/usr/local/src/nginx-1</code><code>.10.2</code><code>/fastdfs-nginx-module/src</code>

<code>[root@lanyezi src]</code><code># cp mod_fastdfs.conf /etc/fdfs/   把模块的配置复制到/etc/fdf</code>

<code>复制后来最新安装的fastdfs(源码)的一些配置文件到</code><code>/etc/fdfs/</code>

<code>[root@lanyezi conf]</code><code># cp http.conf anti-steal.jpg mime.types /etc/fdfs/</code>

<code>[root@lanyezi conf]</code><code># pwd</code>

<code>/usr/local/src/fastdfs-5</code><code>.11</code><code>/conf</code>

配置NGINX

<code>[root@lanyezi conf]</code><code># cd /usr/local/nginx/conf/</code>

<code>[root@lanyezi conf]</code><code># ls</code>

<code>fastcgi.conf          fastcgi_params.default  mime.types          nginx.conf.default   uwsgi_params</code>

<code>fastcgi.conf.default  koi-utf                 mime.types.default  scgi_params          uwsgi_params.default</code>

<code>fastcgi_params        koi-win                 nginx.conf          scgi_params.default  win-utf</code>

配置文件

<code>events {</code>

<code>    </code><code>worker_connections  1024;</code>

<code>}</code>

<code>http {</code>

<code>    </code><code>include       mime.types;</code>

<code>    </code><code>default_type  application</code><code>/octet-stream</code><code>;</code>

<code>    </code><code>sendfile        on;</code>

<code>    </code><code>keepalive_timeout  65;</code>

<code>    </code><code>server {</code>

<code>        </code><code>listen       80;</code>

<code>        </code><code>server_name  localhost;</code>

<code>        </code><code>location </code><code>/M00</code> <code>;  </code>

<code>#   添加的     这样的匹配要把url_have_group_name = true</code>

<code>            </code><code>root   </code><code>/data/fdfs_storage/store</code><code>;   添加的</code>

<code>            </code><code>ngx_fastdfs_module;   添加的</code>

<code>        </code><code>location / {</code>

<code>            </code><code>root   html;</code>

<code>            </code><code>index  index.html index.htm;</code>

<code>        </code><code>}</code>

<code>        </code><code>error_page   500 502 503 504  </code><code>/50x</code><code>.html;</code>

<code>        </code><code>location = </code><code>/50x</code><code>.html {</code>

解决后期报错400

<code>vim </code><code>/etc/fdfs/mod_fastdfs</code><code>.conf</code>

<code>修改的地方</code>

<code>url_have_group_name = </code><code>true</code><code>(注意后边不要有分号)</code>

启动NGINX

<code>[root@lanyezi conf]</code><code># /usr/local/nginx/sbin/nginx</code>

<code>ngx_http_fastdfs_set pid=37613</code>

<code>[root@lanyezi conf]</code><code># netstat -lntup</code>

<code>Active Internet connections (only servers)</code>

<code>Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID</code><code>/Program</code> <code>name  </code>

<code>tcp        0      0 0.0.0.0:22122               0.0.0.0:*                   LISTEN      37430</code><code>/fdfs_trackerd</code>

<code>tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      37582</code><code>/nginx</code>        

<code>tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1093</code><code>/sshd</code>          

<code>tcp        0      0 0.0.0.0:23000               0.0.0.0:*                   LISTEN      37444</code><code>/fdfs_storaged</code>

<code>tcp        0      0 :::22                       :::*                        LISTEN      1093</code><code>/sshd</code>

<code>[root@lanyezi conf]</code><code># fdfs_upload_file /etc/fdfs/client.conf /etc/security/limits.conf </code>

<code>group1</code><code>/M00/00/00/wKhQe1no40WACD39AAAHK_yyDxI74</code><code>.conf</code>

<code>http:</code><code>//192</code><code>.168.80.123</code><code>/M00/00/00/wKhQe1no40WACD39AAAHK_yyDxI74</code><code>.conf</code>

可以下载

配置fastdfs集群nginx

配置多个group

        如果需要再单台服务器实例多个storage的解决办法

一、复制一份storage.conf并修改文件名storage_aaa.conf

 二、修改storage_aaa.conf相关配置

1、修改组名:group_name=group4

2、修改端口:port=23004

3、修改日志文件目录:base_path=/fastdfs/aaa/data-and-log

4、修改资源保存路径:store_path0=/fastdfs/aaa/aaa-data

三、修改mod_fastdfs.conf配置文件

1、修改组名:group_name=group1/group2/group3/group4  多个用/区分开

2、设置组个数:group_count = 4

3、设置每一组信息:

<code>[group1]group_name=group1</code>

<code>storage_server_port=23000</code>

<code>store_path0=</code><code>/fastdfs/storage/images-data</code>

<code>[group2]</code>

<code>group_name=group2</code>

<code>storage_server_port=23001</code>

<code>store_path0=</code><code>/fastdfs/storage_voice/voice-data</code>

等以此类推

<code>nginx日志报错ERROR - </code><code>file</code><code>: ..</code><code>/common/fdfs_global</code><code>.c, line: 52, the </code><code>format</code> <code>of filename</code>

解决办法:

<code>vi</code> <code>/etc/fdfs/mod_fastdfs</code><code>.conf</code>

<code>将</code>

<code>url_have_group_name=</code><code>false</code>

<code>改为</code>

<code>url_have_group_name=</code><code>true</code>

四、重启相关服务,可以访问到相关图片、语音等信息

本人在码云上提交了关于阅读spring源码之后编写的一些基础模块的实现,https://git.oschina.net/73hulu/spring.git 望大家不吝给颗星star,谢谢大家

<code>[root@iZ2ze66dst6erg4u4lszcsZ fdfs_storage]</code><code># /usr/bin/fdfs_storaged /etc/fdfs/storage_aaa.conf  启动单独的配置文件</code>

本文转自 蓝叶子Sheep 51CTO博客,原文链接:http://blog.51cto.com/dellinger/2054687,如需转载请自行联系原作者

继续阅读