centos7安装jdk,tomcat,nginx,redis,fastDFS的步骤

centos7安装jdk,tomcat,nginx,redis,fastDFS的步骤*

1.linux****安装****jdk**

1.1安装配置:

cd /usr

rz tar -zxvf jdk-8u73-linux-x64.tar.gz

mv jdk1.8.0_73 jdk8

1、 全局配置 vi /etc/profile

image.png

export JAVA_HOME=/usr/jdk8

export JAVA_BIN=/usr/jdk8/bin

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

立即生效,执行

source /etc/profile

1.2、重启测试

java -version

屏幕输出:

[root@localhost usr]# java -version

openjdk version "1.8.0_131"

OpenJDK Runtime Environment (build 1.8.0_131-b12)

OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

2.linux****安装****tomcat

2.1安装配置:

cd /usr/local

rz

tar -zxvf apache-tomcat-8.0.33.tar.gz

mv apache-tomcat-8.0.33 tomcat

cd /tomcat/bin

2.2 启动tomcat:

[root@localhost bin]# ./startup.sh

Using CATALINA_BASE: /usr/local/tomcat

Using CATALINA_HOME: /usr/local/tomcat

Using CATALINA_TMPDIR: /usr/local/tomcat/temp

Using JRE_HOME: /usr/jdk8

Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

Tomcat started.

[root@localhost bin]# ./shutdown.sh

Using CATALINA_BASE: /usr/local/tomcat

Using CATALINA_HOME: /usr/local/tomcat

Using CATALINA_TMPDIR: /usr/local/tomcat/temp

Using JRE_HOME: /usr/jdk8

Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

3.linux****安装****redis

3.1安装配置

cd /usr/local

rz

tar redis-4.0.9.tar.gz

cd redis-4.0.9 make

cd src make install

CC redis-cli.o

LINK redis-cli

CC redis-benchmark.o

LINK redis-benchmark

INSTALL redis-check-rdb

INSTALL redis-check-aof

Hint: It's a good idea to run 'make test' ;)

make[1]: 离开目录“/usr/local/redis-4.0.9/src”

[root@localhost redis-4.0.9]# cd src/

[root@localhost src]# make install

CC Makefile.dep

Hint: It's a good idea to run 'make test' ;)

INSTALL install

INSTALL install

INSTALL install

INSTALL install

INSTALL install

[root@localhost src]#

配置修改:

image.png
image.png

3.2启动redis

[root@localhost src]# ./redis-server /usr/local/redis/redis.conf

9125:C 25 Apr 17:50:28.770 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

9125:C 25 Apr 17:50:28.770 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=9125, just started

9125:C 25 Apr 17:50:28.770 # Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf

9125:M 25 Apr 17:50:28.771 * Increased maximum number of open files to 10032 (it was originally set to 1024).

.

.-``_ ''-._

.-`` .. ''-._ Redis 4.0.9 (00000000/0) 64 bit

.-`` .-./ ., ''-._

( ' , .-|, ) Running in standalone mode

|-._-...-__...-.``-._|' _.-'| Port: 6379

| -._._ / _.-' | PID: 9125

-._-._ `-./ _.-' _.-'

|-._-._ `-.__.-' .-'.-'|

| -._-._ .-'.-' | http://redis.io

-._-.`-..-'.-' _.-'

|-._-._ `-.__.-' .-'.-'|

| -._-._ .-'.-' |

-._-.`-..-'.-' _.-'

-._-.__.-' _.-'

`-._ _.-'

`-.__.-'

9125:M 25 Apr 17:50:28.771 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

9125:M 25 Apr 17:50:28.771 # Server initialized

9125:M 25 Apr 17:50:28.771 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

9125:M 25 Apr 17:50:28.771 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.

9125:M 25 Apr 17:50:28.771 * Ready to accept connections

3.3启动redis客户端测试:

[root@bogon bin]# redis-cli

127.0.0.1:6379> set key "value"

OK

127.0.0.1:6379> get key

"value"

127.0.0.1:6379> exit

[root@bogon bin]# netstat -tunpl|grep 6379

tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 9125/./redis-server

tcp6 0 0 :::6379 :::* LISTEN 9125/./redis-server

3.4关闭客户端

[root@bogon bin]# redis-cli shutdown

[root@bogon bin]# netstat -tunpl|grep 6379

3.5关闭服务器

[root@localhost bin]# ps -ef |grep redis

root 9644 9310 0 18:21 pts/0 00:00:00 redis-server *:6379

root 9675 4170 0 18:23 pts/1 00:00:00 grep --color=auto redis

[root@localhost bin]# netstat -tunpl |grep 6379

tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 9644/redis-server *

tcp6 0 0 :::6379 :::* LISTEN 9644/redis-server *

[root@localhost bin]# redis-cli

127.0.0.1:6379>

127.0.0.1:6379>

127.0.0.1:6379> exit

[root@localhost bin]# netstat -tunpl |grep 6379

tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 9644/redis-server *

tcp6 0 0 :::6379 :::* LISTEN 9644/redis-server *

[root@localhost bin]# netstat -tunpl |grep 6379

tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 9644/redis-server *

tcp6 0 0 :::6379 :::* LISTEN 9644/redis-server *

[root@localhost bin]# pkill redis-server

[root@localhost bin]# netstat -tunpl |grep 6379

[root@localhost bin]# redis-cli

Could not connect to Redis at 127.0.0.1:6379: Connection refused

Could not connect to Redis at 127.0.0.1:6379: Connection refused

not connected>

4.linux****安装****fastdfs

4.1下载libfastcommon 网址https://github.com/happyfish100/fastdfs/releases

4.2解压libfastcommon tar.gz包

[root@bogon ~]# tar -zxvf libfastcommon-****1.0.36.tar.gz

[root@bogon ~]# cd libfastcommon-****1.0.36****/

[root@bogon libfastcommon-1.0.36]# cd ..

[root@bogon ~]# mv libfastcommon-****1.0.36 libfastcommon

[root@bogon ~]# ll

总用量 1388

-rw-------. 1 root root 2254 4月 18 22:05 anaconda-ks.cfg

drwxrwxr-x 10 root root 258 4月 26 10:53 fastdfs-5.05

-rw-r--r-- 1 root root 336001 4月 26 10:26 fastdfs-5.05.tar.gz

drwxrwxr-x 10 root root 258 4月 26 11:07 fastdfs-5.09

-rw-r--r-- 1 root root 335132 4月 26 11:04 fastdfs-5.09.tar.gz

-rw-r--r--. 1 root root 2285 4月 18 14:10 initial-setup-ks.cfg

drwxrwxr-x 5 root root 135 4月 5 2017 libfastcommon

-rw-r--r-- 1 root root 434873 4月 26 11:08 libfastcommon-1.0.36.tar.gz

-rw-r--r-- 1 root root 73148 4月 26 10:37 libfastcommon-1.0.7.tar.gz

-rwxr-xr-x 1 root root 174744 4月 26 10:48 libfastcommon.so

-rw-r--r-- 1 root root 45680 4月 25 19:42 libfastcommon_v1.01.tar.gz

drwxr-xr-x 3 27626 users 87 10月 4 2009 src

drwxr-xr-x 2 root root 6 4月 18 19:40 公共

drwxr-xr-x 2 root root 6 4月 18 19:40 模板

drwxr-xr-x 2 root root 6 4月 18 19:40 视频

drwxr-xr-x 2 root root 6 4月 18 19:40 图片

drwxr-xr-x 2 root root 6 4月 18 19:40 文档

drwxr-xr-x 2 root root 6 4月 18 19:40 下载

drwxr-xr-x 2 root root 6 4月 18 19:40 音乐

drwxr-xr-x 2 root root 6 4月 18 19:40 桌面

4.3安装libfastcommon

[root@bogon ~]# cd libfastcommon/

[root@bogon libfastcommon]# ./make

-bash: ./make: 没有那个文件或目录

[root@bogon libfastcommon]# ./make.sh

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o hash.o hash.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o chain.o chain.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o shared_func.o shared_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o ini_file_reader.o ini_file_reader.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o logger.o logger.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o sockopt.o sockopt.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o base64.o base64.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o sched_thread.o sched_thread.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o http_func.o http_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o md5.o md5.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o pthread_func.o pthread_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o local_ip_func.o local_ip_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o avl_tree.o avl_tree.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o ioevent.o ioevent.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o ioevent_loop.o ioevent_loop.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_task_queue.o fast_task_queue.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_timer.o fast_timer.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o process_ctrl.o process_ctrl.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_mblock.o fast_mblock.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o connection_pool.o connection_pool.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_mpool.o fast_mpool.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_allocator.o fast_allocator.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_buffer.o fast_buffer.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o multi_skiplist.o multi_skiplist.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o flat_skiplist.o flat_skiplist.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o system_info.o system_info.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o fast_blocked_queue.o fast_blocked_queue.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o id_generator.o id_generator.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o char_converter.o char_converter.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -o char_convert_loader.o char_convert_loader.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o hash.lo hash.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o chain.lo chain.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o shared_func.lo shared_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o ini_file_reader.lo ini_file_reader.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o logger.lo logger.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o sockopt.lo sockopt.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o base64.lo base64.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o sched_thread.lo sched_thread.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o http_func.lo http_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o md5.lo md5.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o pthread_func.lo pthread_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o local_ip_func.lo local_ip_func.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o avl_tree.lo avl_tree.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o ioevent.lo ioevent.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o ioevent_loop.lo ioevent_loop.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_task_queue.lo fast_task_queue.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_timer.lo fast_timer.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o process_ctrl.lo process_ctrl.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_mblock.lo fast_mblock.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o connection_pool.lo connection_pool.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_mpool.lo fast_mpool.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_allocator.lo fast_allocator.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_buffer.lo fast_buffer.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o multi_skiplist.lo multi_skiplist.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o flat_skiplist.lo flat_skiplist.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o system_info.lo system_info.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o fast_blocked_queue.lo fast_blocked_queue.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o id_generator.lo id_generator.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o char_converter.lo char_converter.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -c -fPIC -o char_convert_loader.lo char_convert_loader.c

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O3 -o libfastcommon.so -shared hash.lo chain.lo shared_func.lo ini_file_reader.lo logger.lo sockopt.lo base64.lo sched_thread.lo http_func.lo md5.lo pthread_func.lo local_ip_func.lo avl_tree.lo ioevent.lo ioevent_loop.lo fast_task_queue.lo fast_timer.lo process_ctrl.lo fast_mblock.lo connection_pool.lo fast_mpool.lo fast_allocator.lo fast_buffer.lo multi_skiplist.lo flat_skiplist.lo system_info.lo fast_blocked_queue.lo id_generator.lo char_converter.lo char_convert_loader.lo -lm -lpthread

ar rcs libfastcommon.a hash.o chain.o shared_func.o ini_file_reader.o logger.o sockopt.o base64.o sched_thread.o http_func.o md5.o pthread_func.o local_ip_func.o avl_tree.o ioevent.o ioevent_loop.o fast_task_queue.o fast_timer.o process_ctrl.o fast_mblock.o connection_pool.o fast_mpool.o fast_allocator.o fast_buffer.o multi_skiplist.o flat_skiplist.o system_info.o fast_blocked_queue.o id_generator.o char_converter.o char_convert_loader.o

[root@bogon libfastcommon]# ./make.sh install

mkdir -p /usr/lib64

mkdir -p /usr/lib

install -m 755 libfastcommon.so /usr/lib64

install -m 755 libfastcommon.so /usr/lib

mkdir -p /usr/include/fastcommon

install -m 644 common_define.h hash.h chain.h logger.h base64.h shared_func.h pthread_func.h ini_file_reader.h _os_define.h sockopt.h sched_thread.h http_func.h md5.h local_ip_func.h avl_tree.h ioevent.h ioevent_loop.h fast_task_queue.h fast_timer.h process_ctrl.h fast_mblock.h connection_pool.h fast_mpool.h fast_allocator.h fast_buffer.h skiplist.h multi_skiplist.h flat_skiplist.h skiplist_common.h system_info.h fast_blocked_queue.h php7_ext_wrapper.h id_generator.h char_converter.h char_convert_loader.h /usr/include/fastcommon

[root@bogon libfastcommon]#

f

4.4安装fastdfs-5.09

[root@bogon ~]# cd fastdfs-5.09/

[root@bogon fastdfs-5.09]# ./make.sh

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_service.o tracker_service.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_status.o tracker_status.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_global.o tracker_global.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_func.o tracker_func.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_nio.o tracker_nio.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_relationship.o tracker_relationship.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_dump.o tracker_dump.c -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -o fdfs_trackerd fdfs_trackerd.c ../common/fdfs_global.o tracker_proto.o tracker_mem.o tracker_service.o tracker_status.o tracker_global.o tracker_func.o fdfs_shared_func.o tracker_nio.o tracker_relationship.o tracker_dump.o -L/usr/lib64 -lpthread -lfastcommon -I../common -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o tracker_client_thread.o tracker_client_thread.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_global.o storage_global.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_func.o storage_func.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_service.o storage_service.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_sync.o storage_sync.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_nio.o storage_nio.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_dio.o storage_dio.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_ip_changed_dealer.o storage_ip_changed_dealer.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_param_getter.o storage_param_getter.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_disk_recovery.o storage_disk_recovery.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o trunk_mgr/trunk_mem.o trunk_mgr/trunk_mem.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o trunk_mgr/trunk_sync.o trunk_mgr/trunk_sync.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o trunk_mgr/trunk_client.o trunk_mgr/trunk_client.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o trunk_mgr/trunk_free_block_checker.o trunk_mgr/trunk_free_block_checker.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o fdht_client/fdht_proto.o fdht_client/fdht_proto.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o fdht_client/fdht_client.o fdht_client/fdht_client.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o fdht_client/fdht_func.o fdht_client/fdht_func.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o fdht_client/fdht_global.o fdht_client/fdht_global.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -c -o storage_dump.o storage_dump.c -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

cc -Wall -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -g -O -DDEBUG_FLAG -o fdfs_storaged fdfs_storaged.c ../common/fdfs_global.o ../tracker/fdfs_shared_func.o ../tracker/tracker_proto.o tracker_client_thread.o storage_global.o storage_func.o storage_service.o storage_sync.o storage_nio.o storage_dio.o storage_ip_changed_dealer.o storage_param_getter.o storage_disk_recovery.o trunk_mgr/trunk_mem.o trunk_mgr/trunk_shared.o trunk_mgr/trunk_sync.o trunk_mgr/trunk_client.o trunk_mgr/trunk_free_block_checker.o ../client/client_global.o ../client/tracker_client.o ../client/storage_client.o ../client/client_func.o fdht_client/fdht_proto.o fdht_client/fdht_client.o fdht_client/fdht_func.o fdht_client/fdht_global.o storage_dump.o -L/usr/lib64 -lpthread -lfastcommon -I. -Itrunk_mgr -I../common -I../tracker -I../client -Ifdht_client -I/usr/include/fastcommon

make: 对“all”无需做任何事。

[root@bogon fastdfs-5.09]# ./make.sh install

mkdir -p /usr/bin

mkdir -p /etc/fdfs

cp -f fdfs_trackerd /usr/bin

if [ ! -f /etc/fdfs/tracker.conf.sample ]; then cp -f ../conf/tracker.conf /etc/fdfs/tracker.conf.sample; fi

if [ ! -f /etc/fdfs/storage_ids.conf.sample ]; then cp -f ../conf/storage_ids.conf /etc/fdfs/storage_ids.conf.sample; fi

mkdir -p /usr/bin

mkdir -p /etc/fdfs

cp -f fdfs_storaged /usr/bin

if [ ! -f /etc/fdfs/storage.conf.sample ]; then cp -f ../conf/storage.conf /etc/fdfs/storage.conf.sample; fi

mkdir -p /usr/bin

mkdir -p /etc/fdfs

mkdir -p /usr/lib64

mkdir -p /usr/lib

cp -f fdfs_monitor fdfs_test fdfs_test1 fdfs_crc32 fdfs_upload_file fdfs_download_file fdfs_delete_file fdfs_file_info fdfs_appender_test fdfs_appender_test1 fdfs_append_file fdfs_upload_appender /usr/bin

if [ 0 -eq 1 ]; then cp -f libfdfsclient.a /usr/lib64; cp -f libfdfsclient.a /usr/lib/;fi

if [ 1 -eq 1 ]; then cp -f libfdfsclient.so /usr/lib64; cp -f libfdfsclient.so /usr/lib/;fi

mkdir -p /usr/include/fastdfs

cp -f ../common/fdfs_define.h ../common/fdfs_global.h ../common/mime_file_parser.h ../common/fdfs_http_shared.h ../tracker/tracker_types.h ../tracker/tracker_proto.h ../tracker/fdfs_shared_func.h ../storage/trunk_mgr/trunk_shared.h tracker_client.h storage_client.h storage_client1.h client_func.h client_global.h fdfs_client.h /usr/include/fastdfs

if [ ! -f /etc/fdfs/client.conf.sample ]; then cp -f ../conf/client.conf /etc/fdfs/client.conf.sample; fi

[root@bogon fastdfs-5.09]#

4.5配置fdfs

[root@bogon /]# mkdir -p /data/fdfs_tracker

[root@bogon /]# mkdir -p /data/fdfs_storage

[root@bogon /]# cd /etc/fdfs/

[root@bogon fdfs]# ls

client.conf.sample storage.conf.sample storage_ids.conf.sample tracker.conf.sample

[root@bogon fdfs]# cp tracker.conf.sample tracker.conf

[root@bogon fdfs]# ls

client.conf.sample storage.conf.sample storage_ids.conf.sample tracker.conf tracker.conf.sample

[root@bogon fdfs]# vim tracker.conf

[root@bogon fdfs]# ll

总用量 32

-rw-r--r-- 1 root root 1461 4月 26 10:53 client.conf.sample

-rw-r--r-- 1 root root 7927 4月 26 11:13 storage.conf.sample

-rw-r--r-- 1 root root 105 4月 26 11:13 storage_ids.conf.sample

-rw-r--r-- 1 root root 7316 4月 26 11:38 tracker.conf

-rw-r--r-- 1 root root 7318 4月 26 11:13 tracker.conf.sample

[root@bogon fdfs]# cp storage.conf.sample storage.conf

[root@bogon fdfs]# ll

总用量 40

-rw-r--r-- 1 root root 1461 4月 26 10:53 client.conf.sample

-rw-r--r-- 1 root root 7927 4月 26 11:41 storage.conf

-rw-r--r-- 1 root root 7927 4月 26 11:13 storage.conf.sample

-rw-r--r-- 1 root root 105 4月 26 11:13 storage_ids.conf.sample

-rw-r--r-- 1 root root 7316 4月 26 11:38 tracker.conf

-rw-r--r-- 1 root root 7318 4月 26 11:13 tracker.conf.sample

[root@bogon fdfs]# vim storage.conf

[root@bogon fdfs]# mkdir -p /data/fdfs_storage/base

4.6启动tracker

[root@bogon fdfs]# /etc/init.d/fdfs_trackerd start

Reloading systemd: [ 确定 ]

Starting fdfs_trackerd (via systemctl): [ 确定 ]

4.7配置storage

[root@bogon fdfs]# vim storage.conf

[root@bogon fdfs]# vim storage.conf

[root@bogon fdfs]# > mkdir -p /data/fdfs_storage/storage0

bash: -p: 未找到命令...

[root@bogon fdfs]# > mkdir -p /data/fdfs_storage/storage1

bash: -p: 未找到命令...

[root@bogon fdfs]# > mkdir /data/fdfs_storage/storage1

-bash: /data/fdfs_storage/storage1: 没有那个文件或目录

[root@bogon fdfs]# cd /data/fdfs_storage/

[root@bogon fdfs_storage]# ll

总用量 0

drwxr-xr-x 3 root root 18 4月 26 11:44 base

[root@bogon fdfs_storage]# mkdir storage0

[root@bogon fdfs_storage]# mkdir storage1

[root@bogon fdfs_storage]# ll

总用量 0

drwxr-xr-x 3 root root 18 4月 26 11:44 base

drwxr-xr-x 2 root root 6 4月 26 13:40 storage0

drwxr-xr-x 2 root root 6 4月 26 13:40 storage1

[root@bogon fdfs_storage]# /etc/init.d/fdfs_trackerd restart

Restarting fdfs_trackerd (via systemctl): [ 确定 ]

4.8启动fdfs_storaged

[root@bogon fdfs_storage]# /etc/init.d/fdfs_storaged restart

Restarting fdfs_storaged (via systemctl): [ 确定 ]

[root@bogon fdfs_storage]#

5.linux安装nginx

5.1安装pcre

[root@bogon ~]# useradd -s /sbin/nologin -M nginx

[root@bogon ~]# ll

总用量 3712

-rw-------. 1 root root 2254 4月 18 22:05 anaconda-ks.cfg

drwxrwxr-x 10 root root 258 4月 26 11:13 fastdfs-5.09

-rw-r--r-- 1 root root 335132 4月 26 11:04 fastdfs-5.09.tar.gz

-rw-r--r-- 1 root root 22192 4月 26 14:10 fastdfs-nginx-module-master.zip

-rw-r--r--. 1 root root 2285 4月 18 14:10 initial-setup-ks.cfg

drwxrwxr-x 5 root root 135 4月 26 11:11 libfastcommon

-rw-r--r-- 1 root root 434873 4月 26 11:08 libfastcommon-1.0.36.tar.gz

drwxr-xr-x 8 mysql mysql 158 1月 31 2017 nginx-1.10.3

-rw-r--r-- 1 root root 911509 4月 26 14:08 nginx-1.10.3.tar.gz

drwxr-xr-x 7 1169 1169 8192 1月 11 2017 pcre-8.40

-rw-r--r-- 1 root root 2065161 4月 26 13:53 pcre-8.40.tar.gz

drwxr-xr-x 3 27626 users 87 10月 4 2009 src

drwxr-xr-x 2 root root 6 4月 18 19:40 公共

drwxr-xr-x 2 root root 6 4月 18 19:40 模板

drwxr-xr-x 2 root root 6 4月 18 19:40 视频

drwxr-xr-x 2 root root 6 4月 18 19:40 图片

drwxr-xr-x 2 root root 6 4月 18 19:40 文档

drwxr-xr-x 2 root root 6 4月 18 19:40 下载

drwxr-xr-x 2 root root 6 4月 18 19:40 音乐

drwxr-xr-x 2 root root 6 4月 18 19:40 桌面

[root@bogon ~]# cd pcre-8.40/

[root@bogon pcre-8.40]# ./configure --prefix=/data/pcre

checking for a BSD-compatible install... /usr/bin/install -c

checking whether build environment is sane... yes

checking for a thread-safe mkdir -p... /usr/bin/mkdir -p

checking for gawk... gawk

checking whether make sets $(MAKE)... yes

checking whether make supports nested variables... yes

checking whether make supports nested variables... (cached) yes

checking for style of include used by make... GNU

checking for gcc... gcc

checking whether the C compiler works... yes

checking for C compiler default output file name... a.out

checking for suffix of executables...

checking whether we are cross compiling... no

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ISO C89... none needed

checking whether gcc understands -c and -o together... yes

checking dependency style of gcc... gcc3

checking for ar... ar

checking the archiver (ar) interface... ar

checking for gcc... (cached) gcc

checking whether we are using the GNU C compiler... (cached) yes

checking whether gcc accepts -g... (cached) yes

checking for gcc option to accept ISO C89... (cached) none needed

checking whether gcc understands -c and -o together... (cached) yes

checking dependency style of gcc... (cached) gcc3

checking for g++... g++

checking whether we are using the GNU C++ compiler... yes

checking whether g++ accepts -g... yes

checking dependency style of g++... gcc3

checking how to run the C preprocessor... gcc -E

checking for grep that handles long lines and -e... /usr/bin/grep

checking for egrep... /usr/bin/grep -E

checking for ANSI C header files... yes

checking for sys/types.h... yes

checking for sys/stat.h... yes

checking for stdlib.h... yes

checking for string.h... yes

checking for memory.h... yes

checking for strings.h... yes

checking for inttypes.h... yes

checking for stdint.h... yes

checking for unistd.h... yes

checking for int64_t... yes

checking build system type... x86_64-unknown-linux-gnu

checking host system type... x86_64-unknown-linux-gnu

checking how to print strings... printf

checking for a sed that does not truncate output... /usr/bin/sed

checking for fgrep... /usr/bin/grep -F

checking for ld used by gcc... /usr/bin/ld

checking if the linker (/usr/bin/ld) is GNU ld... yes

checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B

checking the name lister (/usr/bin/nm -B) interface... BSD nm

checking whether ln -s works... yes

checking the maximum length of command line arguments... 1572864

checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop

checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop

checking for /usr/bin/ld option to reload object files... -r

checking for objdump... objdump

checking how to recognize dependent libraries... pass_all

checking for dlltool... dlltool

checking how to associate runtime and link libraries... printf %s*n*

checking for archiver @FILE support... @

checking for strip... strip

checking for ranlib... ranlib

checking command to parse /usr/bin/nm -B output from gcc object... ok

checking for sysroot... no

checking for a working dd... /usr/bin/dd

checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1

checking for mt... no

checking if : is a manifest tool... no

checking for dlfcn.h... yes

checking for objdir... .libs

checking if gcc supports -fno-rtti -fno-exceptions... no

checking for gcc option to produce PIC... -fPIC -DPIC

checking if gcc PIC flag -fPIC -DPIC works... yes

checking if gcc static flag -static works... no

checking if gcc supports -c -o file.o... yes

checking if gcc supports -c -o file.o... (cached) yes

checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes

checking whether -lc should be explicitly linked in... no

checking dynamic linker characteristics... GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether stripping libraries is possible... yes

checking if libtool supports shared libraries... yes

checking whether to build shared libraries... yes

checking whether to build static libraries... yes

checking how to run the C++ preprocessor... g++ -E

checking for ld used by g++... /usr/bin/ld -m elf_x86_64

checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes

checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes

checking for g++ option to produce PIC... -fPIC -DPIC

checking if g++ PIC flag -fPIC -DPIC works... yes

checking if g++ static flag -static works... no

checking if g++ supports -c -o file.o... yes

checking if g++ supports -c -o file.o... (cached) yes

checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes

checking dynamic linker characteristics... (cached) GNU/Linux ld.so

checking how to hardcode library paths into programs... immediate

checking whether ln -s works... yes

checking whether the -Werror option is usable... yes

checking for simple visibility declarations... yes

checking for ANSI C header files... (cached) yes

checking limits.h usability... yes

checking limits.h presence... yes

checking for limits.h... yes

checking for sys/types.h... (cached) yes

checking for sys/stat.h... (cached) yes

checking dirent.h usability... yes

checking dirent.h presence... yes

checking for dirent.h... yes

checking windows.h usability... no

checking windows.h presence... no

checking for windows.h... no

checking for alias support in the linker... no

checking for alias support in the linker... no

checking string usability... yes

checking string presence... yes

checking for string... yes

checking bits/type_traits.h usability... no

checking bits/type_traits.h presence... no

checking for bits/type_traits.h... no

checking type_traits.h usability... no

checking type_traits.h presence... no

checking for type_traits.h... no

checking for strtoq... yes

checking for long long... yes

checking for unsigned long long... yes

checking for an ANSI C-conforming const... yes

checking for size_t... yes

checking for bcopy... yes

checking for memmove... yes

checking for strerror... yes

checking zlib.h usability... no

checking zlib.h presence... no

checking for zlib.h... no

checking for gzopen in -lz... no

checking bzlib.h usability... no

checking bzlib.h presence... no

checking for bzlib.h... no

checking for libbz2... no

checking that generated files are newer than configure... done

configure: creating ./config.status

config.status: creating Makefile

config.status: creating libpcre.pc

config.status: creating libpcre16.pc

config.status: creating libpcre32.pc

config.status: creating libpcreposix.pc

config.status: creating libpcrecpp.pc

config.status: creating pcre-config

config.status: creating pcre.h

config.status: creating pcre_stringpiece.h

config.status: creating pcrecpparg.h

config.status: creating config.h

config.status: executing depfiles commands

config.status: executing libtool commands

config.status: executing script-chmod commands

config.status: executing delete-old-chartables commands

pcre-8.40 configuration summary:

Install prefix .................. : /data/pcre

C preprocessor .................. : gcc -E

C compiler ...................... : gcc

C++ preprocessor ................ : g++ -E

C++ compiler .................... : g++

Linker .......................... : /usr/bin/ld -m elf_x86_64

C preprocessor flags ............ :

C compiler flags ................ : -g -O2 -fvisibility=hidden

C++ compiler flags .............. : -O2 -fvisibility=hidden -fvisibility-inlines-hidden

Linker flags .................... :

Extra libraries ................. :

Build 8 bit pcre library ........ : yes

Build 16 bit pcre library ....... : no

Build 32 bit pcre library ....... : no

Build C++ library ............... : yes

Enable JIT compiling support .... : no

Enable UTF-8/16/32 support ...... : no

Unicode properties .............. : no

Newline char/sequence ........... : lf

\R matches only ANYCRLF ......... : no

EBCDIC coding ................... : no

EBCDIC code for NL .............. : n/a

Rebuild char tables ............. : no

Use stack recursion ............. : yes

POSIX mem threshold ............. : 10

Internal link size .............. : 2

Nested parentheses limit ........ : 250

Match limit ..................... : 10000000

Match limit recursion ........... : MATCH_LIMIT

Build shared libs ............... : yes

Build static libs ............... : yes

Use JIT in pcregrep ............. : no

Buffer size for pcregrep ........ : 20480

Link pcregrep with libz ......... : no

Link pcregrep with libbz2 ....... : no

Link pcretest with libedit ...... : no

Link pcretest with libreadline .. : no

Valgrind support ................ : no

Code coverage ................... : no

[root@bogon pcre-8.40]# make && make install

rm -f pcre_chartables.c

ln -s ./pcre_chartables.c.dist pcre_chartables.c

make all-am

make[1]: 进入目录“/root/pcre-8.40”

CC libpcre_la-pcre_byte_order.lo

CC libpcre_la-pcre_compile.lo

CC libpcre_la-pcre_config.lo

CC libpcre_la-pcre_dfa_exec.lo

CC libpcre_la-pcre_exec.lo

CC libpcre_la-pcre_fullinfo.lo

CC libpcre_la-pcre_get.lo

CC libpcre_la-pcre_globals.lo

CC libpcre_la-pcre_jit_compile.lo

CC libpcre_la-pcre_maketables.lo

CC libpcre_la-pcre_newline.lo

CC libpcre_la-pcre_ord2utf8.lo

CC libpcre_la-pcre_refcount.lo

CC libpcre_la-pcre_string_utils.lo

CC libpcre_la-pcre_study.lo

CC libpcre_la-pcre_tables.lo

CC libpcre_la-pcre_ucd.lo

CC libpcre_la-pcre_valid_utf8.lo

CC libpcre_la-pcre_version.lo

CC libpcre_la-pcre_xclass.lo

CC libpcre_la-pcre_chartables.lo

CCLD libpcre.la

CC libpcreposix_la-pcreposix.lo

CCLD libpcreposix.la

CXX libpcrecpp_la-pcrecpp.lo

CXX libpcrecpp_la-pcre_scanner.lo

CXX libpcrecpp_la-pcre_stringpiece.lo

CXXLD libpcrecpp.la

CC pcretest-pcretest.o

CC pcretest-pcre_printint.o

CCLD pcretest

CC pcregrep-pcregrep.o

CCLD pcregrep

CXX pcrecpp_unittest-pcrecpp_unittest.o

CXXLD pcrecpp_unittest

CXX pcre_scanner_unittest-pcre_scanner_unittest.o

CXXLD pcre_scanner_unittest

CXX pcre_stringpiece_unittest-pcre_stringpiece_unittest.o

CXXLD pcre_stringpiece_unittest

make[1]: 离开目录“/root/pcre-8.40”

make install-am

make[1]: 进入目录“/root/pcre-8.40”

make[2]: 进入目录“/root/pcre-8.40”

/usr/bin/mkdir -p '/data/pcre/lib'

/bin/sh ./libtool --mode=install /usr/bin/install -c libpcre.la libpcreposix.la libpcrecpp.la '/data/pcre/lib'

libtool: install: /usr/bin/install -c .libs/libpcre.so.1.2.8 /data/pcre/lib/libpcre.so.1.2.8

libtool: install: (cd /data/pcre/lib && { ln -s -f libpcre.so.1.2.8 libpcre.so.1 || { rm -f libpcre.so.1 && ln -s libpcre.so.1.2.8 libpcre.so.1; }; })

libtool: install: (cd /data/pcre/lib && { ln -s -f libpcre.so.1.2.8 libpcre.so || { rm -f libpcre.so && ln -s libpcre.so.1.2.8 libpcre.so; }; })

libtool: install: /usr/bin/install -c .libs/libpcre.lai /data/pcre/lib/libpcre.la

libtool: warning: relinking 'libpcreposix.la'

libtool: install: (cd /root/pcre-8.40; /bin/sh "/root/pcre-8.40/libtool" --silent --tag CC --mode=relink gcc -fvisibility=hidden -g -O2 -version-info 0:4:0 -o libpcreposix.la -rpath /data/pcre/lib libpcreposix_la-pcreposix.lo libpcre.la )

libtool: install: /usr/bin/install -c .libs/libpcreposix.so.0.0.4T /data/pcre/lib/libpcreposix.so.0.0.4

libtool: install: (cd /data/pcre/lib && { ln -s -f libpcreposix.so.0.0.4 libpcreposix.so.0 || { rm -f libpcreposix.so.0 && ln -s libpcreposix.so.0.0.4 libpcreposix.so.0; }; })

libtool: install: (cd /data/pcre/lib && { ln -s -f libpcreposix.so.0.0.4 libpcreposix.so || { rm -f libpcreposix.so && ln -s libpcreposix.so.0.0.4 libpcreposix.so; }; })

libtool: install: /usr/bin/install -c .libs/libpcreposix.lai /data/pcre/lib/libpcreposix.la

libtool: warning: relinking 'libpcrecpp.la'

libtool: install: (cd /root/pcre-8.40; /bin/sh "/root/pcre-8.40/libtool" --silent --tag CXX --mode=relink g++ -fvisibility=hidden -fvisibility-inlines-hidden -O2 -version-info 0:1:0 -o libpcrecpp.la -rpath /data/pcre/lib libpcrecpp_la-pcrecpp.lo libpcrecpp_la-pcre_scanner.lo libpcrecpp_la-pcre_stringpiece.lo libpcre.la )

libtool: install: /usr/bin/install -c .libs/libpcrecpp.so.0.0.1T /data/pcre/lib/libpcrecpp.so.0.0.1

libtool: install: (cd /data/pcre/lib && { ln -s -f libpcrecpp.so.0.0.1 libpcrecpp.so.0 || { rm -f libpcrecpp.so.0 && ln -s libpcrecpp.so.0.0.1 libpcrecpp.so.0; }; })

libtool: install: (cd /data/pcre/lib && { ln -s -f libpcrecpp.so.0.0.1 libpcrecpp.so || { rm -f libpcrecpp.so && ln -s libpcrecpp.so.0.0.1 libpcrecpp.so; }; })

libtool: install: /usr/bin/install -c .libs/libpcrecpp.lai /data/pcre/lib/libpcrecpp.la

libtool: install: /usr/bin/install -c .libs/libpcre.a /data/pcre/lib/libpcre.a

libtool: install: chmod 644 /data/pcre/lib/libpcre.a

libtool: install: ranlib /data/pcre/lib/libpcre.a

libtool: install: /usr/bin/install -c .libs/libpcreposix.a /data/pcre/lib/libpcreposix.a

libtool: install: chmod 644 /data/pcre/lib/libpcreposix.a

libtool: install: ranlib /data/pcre/lib/libpcreposix.a

libtool: install: /usr/bin/install -c .libs/libpcrecpp.a /data/pcre/lib/libpcrecpp.a

libtool: install: chmod 644 /data/pcre/lib/libpcrecpp.a

libtool: install: ranlib /data/pcre/lib/libpcrecpp.a

libtool: finish: PATH="/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/admin/.local/bin:/home/admin/bin:/usr/local/mysql/bin/:/usr/jdk8/bin:/root/bin:/sbin" ldconfig -n /data/pcre/lib


Libraries have been installed in:

/data/pcre/lib

If you ever happen to want to link against installed libraries

in a given directory, LIBDIR, you must either use libtool, and

specify the full pathname of the library, or use the '-LLIBDIR'

flag during linking and do at least one of the following:

  • add LIBDIR to the 'LD_LIBRARY_PATH' environment variable

during execution

  • add LIBDIR to the 'LD_RUN_PATH' environment variable

during linking

  • use the '-Wl,-rpath -Wl,LIBDIR' linker flag

  • have your system administrator add LIBDIR to '/etc/ld.so.conf'

See any operating system documentation about shared libraries for

more information, such as the ld(1) and ld.so(8) manual pages.


/usr/bin/mkdir -p '/data/pcre/bin'

/bin/sh ./libtool --mode=install /usr/bin/install -c pcretest pcregrep '/data/pcre/bin'

libtool: install: /usr/bin/install -c .libs/pcretest /data/pcre/bin/pcretest

libtool: install: /usr/bin/install -c .libs/pcregrep /data/pcre/bin/pcregrep

/usr/bin/mkdir -p '/data/pcre/bin'

/usr/bin/install -c pcre-config '/data/pcre/bin'

/usr/bin/mkdir -p '/data/pcre/share/doc/pcre'

/usr/bin/install -c -m 644 doc/pcre.txt doc/pcre-config.txt doc/pcregrep.txt doc/pcretest.txt AUTHORS COPYING ChangeLog LICENCE NEWS README '/data/pcre/share/doc/pcre'

/usr/bin/mkdir -p '/data/pcre/share/doc/pcre/html'

/usr/bin/install -c -m 644 doc/html/NON-AUTOTOOLS-BUILD.txt doc/html/README.txt doc/html/index.html doc/html/pcre-config.html doc/html/pcre.html doc/html/pcre16.html doc/html/pcre32.html doc/html/pcre_assign_jit_stack.html doc/html/pcre_compile.html doc/html/pcre_compile2.html doc/html/pcre_config.html doc/html/pcre_copy_named_substring.html doc/html/pcre_copy_substring.html doc/html/pcre_dfa_exec.html doc/html/pcre_exec.html doc/html/pcre_free_study.html doc/html/pcre_free_substring.html doc/html/pcre_free_substring_list.html doc/html/pcre_fullinfo.html doc/html/pcre_get_named_substring.html doc/html/pcre_get_stringnumber.html doc/html/pcre_get_stringtable_entries.html doc/html/pcre_get_substring.html doc/html/pcre_get_substring_list.html doc/html/pcre_jit_exec.html doc/html/pcre_jit_stack_alloc.html doc/html/pcre_jit_stack_free.html doc/html/pcre_maketables.html doc/html/pcre_pattern_to_host_byte_order.html doc/html/pcre_refcount.html doc/html/pcre_study.html doc/html/pcre_utf16_to_host_byte_order.html doc/html/pcre_utf32_to_host_byte_order.html doc/html/pcre_version.html doc/html/pcreapi.html doc/html/pcrebuild.html doc/html/pcrecallout.html doc/html/pcrecompat.html doc/html/pcredemo.html doc/html/pcregrep.html '/data/pcre/share/doc/pcre/html'

/usr/bin/install -c -m 644 doc/html/pcrejit.html doc/html/pcrelimits.html doc/html/pcrematching.html doc/html/pcrepartial.html doc/html/pcrepattern.html doc/html/pcreperform.html doc/html/pcreposix.html doc/html/pcreprecompile.html doc/html/pcresample.html doc/html/pcrestack.html doc/html/pcresyntax.html doc/html/pcretest.html doc/html/pcreunicode.html '/data/pcre/share/doc/pcre/html'

/usr/bin/mkdir -p '/data/pcre/share/doc/pcre/html'

/usr/bin/install -c -m 644 doc/html/pcrecpp.html '/data/pcre/share/doc/pcre/html'

/usr/bin/mkdir -p '/data/pcre/include'

/usr/bin/install -c -m 644 pcreposix.h pcrecpp.h pcre_scanner.h '/data/pcre/include'

/usr/bin/mkdir -p '/data/pcre/share/man/man1'

/usr/bin/install -c -m 644 doc/pcre-config.1 doc/pcregrep.1 doc/pcretest.1 '/data/pcre/share/man/man1'

/usr/bin/mkdir -p '/data/pcre/share/man/man3'

/usr/bin/install -c -m 644 doc/pcre.3 doc/pcre16.3 doc/pcre32.3 doc/pcre_assign_jit_stack.3 doc/pcre_compile.3 doc/pcre_compile2.3 doc/pcre_config.3 doc/pcre_copy_named_substring.3 doc/pcre_copy_substring.3 doc/pcre_dfa_exec.3 doc/pcre_exec.3 doc/pcre_free_study.3 doc/pcre_free_substring.3 doc/pcre_free_substring_list.3 doc/pcre_fullinfo.3 doc/pcre_get_named_substring.3 doc/pcre_get_stringnumber.3 doc/pcre_get_stringtable_entries.3 doc/pcre_get_substring.3 doc/pcre_get_substring_list.3 doc/pcre_jit_exec.3 doc/pcre_jit_stack_alloc.3 doc/pcre_jit_stack_free.3 doc/pcre_maketables.3 doc/pcre_pattern_to_host_byte_order.3 doc/pcre_refcount.3 doc/pcre_study.3 doc/pcre_utf16_to_host_byte_order.3 doc/pcre_utf32_to_host_byte_order.3 doc/pcre_version.3 doc/pcreapi.3 doc/pcrebuild.3 doc/pcrecallout.3 doc/pcrecompat.3 doc/pcredemo.3 doc/pcrejit.3 doc/pcrelimits.3 doc/pcrematching.3 doc/pcrepartial.3 doc/pcrepattern.3 '/data/pcre/share/man/man3'

/usr/bin/install -c -m 644 doc/pcreperform.3 doc/pcreposix.3 doc/pcreprecompile.3 doc/pcresample.3 doc/pcrestack.3 doc/pcresyntax.3 doc/pcreunicode.3 doc/pcrecpp.3 '/data/pcre/share/man/man3'

/usr/bin/mkdir -p '/data/pcre/include'

/usr/bin/install -c -m 644 pcre.h pcrecpparg.h pcre_stringpiece.h '/data/pcre/include'

/usr/bin/mkdir -p '/data/pcre/lib/pkgconfig'

/usr/bin/install -c -m 644 libpcre.pc libpcreposix.pc libpcrecpp.pc '/data/pcre/lib/pkgconfig'

make install-data-hook

make[3]: 进入目录“/root/pcre-8.40”

ln -sf pcre_assign_jit_stack.3 /data/pcre/share/man/man3/pcre16_assign_jit_stack.3

ln -sf pcre_compile.3 /data/pcre/share/man/man3/pcre16_compile.3

ln -sf pcre_compile2.3 /data/pcre/share/man/man3/pcre16_compile2.3

ln -sf pcre_config.3 /data/pcre/share/man/man3/pcre16_config.3

ln -sf pcre_copy_named_substring.3 /data/pcre/share/man/man3/pcre16_copy_named_substring.3

ln -sf pcre_copy_substring.3 /data/pcre/share/man/man3/pcre16_copy_substring.3

ln -sf pcre_dfa_exec.3 /data/pcre/share/man/man3/pcre16_dfa_exec.3

ln -sf pcre_exec.3 /data/pcre/share/man/man3/pcre16_exec.3

ln -sf pcre_free_study.3 /data/pcre/share/man/man3/pcre16_free_study.3

ln -sf pcre_free_substring.3 /data/pcre/share/man/man3/pcre16_free_substring.3

ln -sf pcre_free_substring_list.3 /data/pcre/share/man/man3/pcre16_free_substring_list.3

ln -sf pcre_fullinfo.3 /data/pcre/share/man/man3/pcre16_fullinfo.3

ln -sf pcre_get_named_substring.3 /data/pcre/share/man/man3/pcre16_get_named_substring.3

ln -sf pcre_get_stringnumber.3 /data/pcre/share/man/man3/pcre16_get_stringnumber.3

ln -sf pcre_get_stringtable_entries.3 /data/pcre/share/man/man3/pcre16_get_stringtable_entries.3

ln -sf pcre_get_substring.3 /data/pcre/share/man/man3/pcre16_get_substring.3

ln -sf pcre_get_substring_list.3 /data/pcre/share/man/man3/pcre16_get_substring_list.3

ln -sf pcre_jit_exec.3 /data/pcre/share/man/man3/pcre16_jit_exec.3

ln -sf pcre_jit_stack_alloc.3 /data/pcre/share/man/man3/pcre16_jit_stack_alloc.3

ln -sf pcre_jit_stack_free.3 /data/pcre/share/man/man3/pcre16_jit_stack_free.3

ln -sf pcre_maketables.3 /data/pcre/share/man/man3/pcre16_maketables.3

ln -sf pcre_pattern_to_host_byte_order.3 /data/pcre/share/man/man3/pcre16_pattern_to_host_byte_order.3

ln -sf pcre_refcount.3 /data/pcre/share/man/man3/pcre16_refcount.3

ln -sf pcre_study.3 /data/pcre/share/man/man3/pcre16_study.3

ln -sf pcre_utf16_to_host_byte_order.3 /data/pcre/share/man/man3/pcre16_utf16_to_host_byte_order.3

ln -sf pcre_version.3 /data/pcre/share/man/man3/pcre16_version.3

ln -sf pcre_assign_jit_stack.3 /data/pcre/share/man/man3/pcre32_assign_jit_stack.3

ln -sf pcre_compile.3 /data/pcre/share/man/man3/pcre32_compile.3

ln -sf pcre_compile2.3 /data/pcre/share/man/man3/pcre32_compile2.3

ln -sf pcre_config.3 /data/pcre/share/man/man3/pcre32_config.3

ln -sf pcre_copy_named_substring.3 /data/pcre/share/man/man3/pcre32_copy_named_substring.3

ln -sf pcre_copy_substring.3 /data/pcre/share/man/man3/pcre32_copy_substring.3

ln -sf pcre_dfa_exec.3 /data/pcre/share/man/man3/pcre32_dfa_exec.3

ln -sf pcre_exec.3 /data/pcre/share/man/man3/pcre32_exec.3

ln -sf pcre_free_study.3 /data/pcre/share/man/man3/pcre32_free_study.3

ln -sf pcre_free_substring.3 /data/pcre/share/man/man3/pcre32_free_substring.3

ln -sf pcre_free_substring_list.3 /data/pcre/share/man/man3/pcre32_free_substring_list.3

ln -sf pcre_fullinfo.3 /data/pcre/share/man/man3/pcre32_fullinfo.3

ln -sf pcre_get_named_substring.3 /data/pcre/share/man/man3/pcre32_get_named_substring.3

ln -sf pcre_get_stringnumber.3 /data/pcre/share/man/man3/pcre32_get_stringnumber.3

ln -sf pcre_get_stringtable_entries.3 /data/pcre/share/man/man3/pcre32_get_stringtable_entries.3

ln -sf pcre_get_substring.3 /data/pcre/share/man/man3/pcre32_get_substring.3

ln -sf pcre_get_substring_list.3 /data/pcre/share/man/man3/pcre32_get_substring_list.3

ln -sf pcre_jit_exec.3 /data/pcre/share/man/man3/pcre32_jit_exec.3

ln -sf pcre_jit_stack_alloc.3 /data/pcre/share/man/man3/pcre32_jit_stack_alloc.3

ln -sf pcre_jit_stack_free.3 /data/pcre/share/man/man3/pcre32_jit_stack_free.3

ln -sf pcre_maketables.3 /data/pcre/share/man/man3/pcre32_maketables.3

ln -sf pcre_pattern_to_host_byte_order.3 /data/pcre/share/man/man3/pcre32_pattern_to_host_byte_order.3

ln -sf pcre_refcount.3 /data/pcre/share/man/man3/pcre32_refcount.3

ln -sf pcre_study.3 /data/pcre/share/man/man3/pcre32_study.3

ln -sf pcre_utf32_to_host_byte_order.3 /data/pcre/share/man/man3/pcre32_utf32_to_host_byte_order.3

ln -sf pcre_version.3 /data/pcre/share/man/man3/pcre32_version.3

make[3]: 离开目录“/root/pcre-8.40”

make[2]: 离开目录“/root/pcre-8.40”

make[1]: 离开目录“/root/pcre-8.40”

5.2下载:zlib-devel

https://centos.pkgs.org/7/centos-x86_64/zlib-devel-1.2.7-17.el7.x86_64.rpm.html

5.3下载:openssl-devel

https://pkgs.org/download/openssl-devel

root@bogon nginx-1.10.3]# yum -y install openssl openssl-devel

已加载插件:fastestmirror, langpacks

Loading mirror speeds from cached hostfile

    • base: mirrors.aliyun.com*
    • extras: mirrors.aliyun.com*
    • updates: mirrors.aliyun.com*

软件包 1:openssl-1.0.2k-8.el7.x86_64 已安装并且是最新版本

软件包 1:openssl-devel-1.0.2k-8.el7.x86_64 已安装并且是最新版本

无须任何处理

5.4安装nginx

[root@bogon nginx-1.10.3]# ./configure

checking for OS

  • Linux 3.10.0-693.el7.x86_64 x86_64

checking for C compiler ... found

  • using GNU C compiler

  • gcc version: 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)

checking for gcc -pipe switch ... found

checking for -Wl,-E switch ... found

checking for gcc builtin atomic operations ... found

checking for C99 variadic macros ... found

checking for gcc variadic macros ... found

checking for gcc builtin 64 bit byteswap ... found

checking for unistd.h ... found

checking for inttypes.h ... found

checking for limits.h ... found

checking for sys/filio.h ... not found

checking for sys/param.h ... found

checking for sys/mount.h ... found

checking for sys/statvfs.h ... found

checking for crypt.h ... found

checking for Linux specific features

checking for epoll ... found

checking for EPOLLRDHUP ... found

checking for O_PATH ... found

checking for sendfile() ... found

checking for sendfile64() ... found

checking for sys/prctl.h ... found

checking for prctl(PR_SET_DUMPABLE) ... found

checking for sched_setaffinity() ... found

checking for crypt_r() ... found

checking for sys/vfs.h ... found

checking for nobody group ... found

checking for poll() ... found

checking for /dev/poll ... not found

checking for kqueue ... not found

checking for crypt() ... not found

checking for crypt() in libcrypt ... found

checking for F_READAHEAD ... not found

checking for posix_fadvise() ... found

checking for O_DIRECT ... found

checking for F_NOCACHE ... not found

checking for directio() ... not found

checking for statfs() ... found

checking for statvfs() ... found

checking for dlopen() ... not found

checking for dlopen() in libdl ... found

checking for sched_yield() ... found

checking for SO_SETFIB ... not found

checking for SO_REUSEPORT ... found

checking for SO_ACCEPTFILTER ... not found

checking for IP_RECVDSTADDR ... not found

checking for IP_PKTINFO ... found

checking for IPV6_RECVPKTINFO ... found

checking for TCP_DEFER_ACCEPT ... found

checking for TCP_KEEPIDLE ... found

checking for TCP_FASTOPEN ... found

checking for TCP_INFO ... found

checking for accept4() ... found

checking for eventfd() ... found

checking for int size ... 4 bytes

checking for long size ... 8 bytes

checking for long long size ... 8 bytes

checking for void * size ... 8 bytes

checking for uint32_t ... found

checking for uint64_t ... found

checking for sig_atomic_t ... found

checking for sig_atomic_t size ... 4 bytes

checking for socklen_t ... found

checking for in_addr_t ... found

checking for in_port_t ... found

checking for rlim_t ... found

checking for uintptr_t ... uintptr_t found

checking for system byte ordering ... little endian

checking for size_t size ... 8 bytes

checking for off_t size ... 8 bytes

checking for time_t size ... 8 bytes

checking for setproctitle() ... not found

checking for pread() ... found

checking for pwrite() ... found

checking for pwritev() ... found

checking for sys_nerr ... found

checking for localtime_r() ... found

checking for posix_memalign() ... found

checking for memalign() ... found

checking for mmap(MAP_ANON|MAP_SHARED) ... found

checking for mmap("/dev/zero", MAP_SHARED) ... found

checking for System V shared memory ... found

checking for POSIX semaphores ... not found

checking for POSIX semaphores in libpthread ... found

checking for struct msghdr.msg_control ... found

checking for ioctl(FIONBIO) ... found

checking for struct tm.tm_gmtoff ... found

checking for struct dirent.d_namlen ... not found

checking for struct dirent.d_type ... found

checking for sysconf(_SC_NPROCESSORS_ONLN) ... found

checking for openat(), fstatat() ... found

checking for getaddrinfo() ... found

checking for PCRE library ... found

checking for PCRE JIT support ... found

checking for md5 in system md library ... not found

checking for md5 in system md5 library ... not found

checking for md5 in system OpenSSL crypto library ... found

checking for sha1 in system md library ... not found

checking for sha1 in system OpenSSL crypto library ... found

checking for zlib library ... found

creating objs/Makefile

Configuration summary

  • using system PCRE library

  • OpenSSL library is not used

  • md5: using system crypto library

  • sha1: using system crypto library

  • using system zlib library

nginx path prefix: "/usr/local/nginx"

nginx binary file: "/usr/local/nginx/sbin/nginx"

nginx modules path: "/usr/local/nginx/modules"

nginx configuration prefix: "/usr/local/nginx/conf"

nginx configuration file: "/usr/local/nginx/conf/nginx.conf"

nginx pid file: "/usr/local/nginx/logs/nginx.pid"

nginx error log file: "/usr/local/nginx/logs/error.log"

nginx http access log file: "/usr/local/nginx/logs/access.log"

nginx http client request body temporary files: "client_body_temp"

nginx http proxy temporary files: "proxy_temp"

nginx http fastcgi temporary files: "fastcgi_temp"

nginx http uwsgi temporary files: "uwsgi_temp"

nginx http scgi temporary files: "scgi_temp"

5.5启动nginx

[root@bogon nginx-1.10.3]#

[root@bogon nginx-1.10.3]# cd objs

[root@bogon objs]# ll

总用量 3540

-rw-r--r-- 1 root root 15172 4月 26 15:32 autoconf.err

-rw-r--r-- 1 root root 38230 4月 26 15:32 Makefile

-rwxr-xr-x 1 root root 3504256 4月 26 15:33 nginx

-rw-r--r-- 1 root root 5341 4月 26 15:33 nginx.8

-rw-r--r-- 1 root root 6638 4月 26 15:32 ngx_auto_config.h

-rw-r--r-- 1 root root 657 4月 26 15:32 ngx_auto_headers.h

-rw-r--r-- 1 root root 5508 4月 26 15:32 ngx_modules.c

-rw-r--r-- 1 root root 30536 4月 26 15:33 ngx_modules.o

drwxr-xr-x 9 root root 91 4月 26 15:32 src

[root@bogon objs]# ./nginx

6参考文档:

rides参考文档:https://www.cnblogs.com/wangchunniu1314/p/6339416.html

fastDFS参考文档:https://www.cnblogs.com/jkko123/p/6490744.html

https://www.cnblogs.com/yufeng218/p/8111961.html

nginx参考文档:https://blog.csdn.net/testcs_dn/article/details/39233569

https://www.cnblogs.com/hackerer/archive/2016/03/12/5270034.html

redis参考文档:https://www.cnblogs.com/oskyhg/p/7293905.html

maven安装参考文档:https://blog.csdn.net/bigtree_3721/article/details/79045028

7.下载链接:

7.1fastDFS下载:

https://github.com/happyfish100

image.png
image.png

7.2 pcre-devel下载

https://centos.pkgs.org/7/centos-x86_64/pcre-devel-8.32-17.el7.x86_64.rpm.html

7.3 openssl-devel下载

https://centos.pkgs.org/7/centos-x86_64/openssl-devel-1.0.2k-8.el7.x86_64.rpm.html

7.4 zlib-devel

https://centos.pkgs.org/7/centos-x86_64/zlib-devel-1.2.7-17.el7.x86_64.rpm.html

image.png

7.5 redis下载:

http://www.redis.cn/

image.png

7.6nginx下载:

http://nginx.org/en/download.html

image.png
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容