Mac安装Nginx、Mysql、PHP、Redis

硬件信息:

macOS Sierra(版本 10.12.1)

处理器 2.6 GHz Intel Core i5

内存 8 GB 1600 MHz DDR3

安装xcode命令行工具的命令:

xcode-select --install

安装homebrew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

旧版本homebrew升级:

brew update

Nginx安装

brew install nginx

➜  ~ brew install nginx
Updating Homebrew...
==> Installing dependencies for nginx: pcre, openssl@1.1
==> Installing nginx dependency: pcre
==> Downloading https://homebrew.bintray.com/bottles/pcre-8.39.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring pcre-8.39.sierra.bottle.tar.gz
🍺  /usr/local/Cellar/pcre/8.39: 203 files, 5.4M
==> Installing nginx dependency: openssl@1.1
==> Downloading https://homebrew.bintray.com/bottles/openssl@1.1-1.1.0c.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring openssl@1.1-1.1.0c.sierra.bottle.tar.gz
==> Using the sandbox
==> Caveats
A CA file has been bootstrapped using certificates from the system
keychain. To add additional certificates, place .pem files in
  /usr/local/etc/openssl@1.1/certs

and run
  /usr/local/opt/openssl@1.1/bin/c_rehash

This formula is keg-only, which means it was not symlinked into /usr/local.

Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/openssl@1.1/lib
    CPPFLAGS: -I/usr/local/opt/openssl@1.1/include

==> Summary
🍺  /usr/local/Cellar/openssl@1.1/1.1.0c: 6,225 files, 15.3M
==> Installing nginx
==> Downloading https://homebrew.bintray.com/bottles/nginx-1.10.2_1.sierra.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring nginx-1.10.2_1.sierra.bottle.1.tar.gz
==> Caveats
Docroot is: /usr/local/var/www

The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo.

nginx will load all files in /usr/local/etc/nginx/servers/.

To have launchd start nginx now and restart at login:
  brew services start nginx
Or, if you don't want/need a background service you can just run:
  nginx
==> Summary
🍺  /usr/local/Cellar/nginx/1.10.2_1: 8 files, 979.8K

配置非管理员开机nginx自动启动的权限和分组:

sudo chown root:wheel /usr/local/Cellar/nginx/1.10.2_1/sbin/nginx
sudo chmod u+s /usr/local/Cellar/nginx/1.10.2_1/sbin/nginx

nginx相关命令:

# 查看nginx版本
➜  ~ nginx -v
nginx version: nginx/1.10.2

# 启动 nginx服务
sudo nginx

#测试配置是否有语法错误
➜  ~ nginx -t
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful

# 重新加载配置|重启|停止|退出 nginx
nginx -s reload|reopen|stop|quit

浏览器中查看效果

nginx启动后,在浏览器中输入http://localhost:8080/,回车即可看到运行结果
显示的是/usr/local/Cellar/nginx/1.10.2_1/html/index.html文件的内容。

开机自启动nginx服务设置:

mkdir -p ~/Library/LaunchAgents
➜  ~ cp /usr/local/Cellar/nginx/1.10.2_1/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
➜  ~ cp /usr/local/Cellar/nginx/1.10.2_1/homebrew.mxcl.nginx.plist /Users/cony/Library/LaunchAgents/
➜  ~ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
➜  ~ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist #取消开机启动

Mysql安装

brew install mysql

➜  ~ brew install mysql
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
macvim                                                    pgbadger                                                  proxychains-ng

==> Installing dependencies for mysql: openssl
==> Installing mysql dependency: openssl
==> Downloading https://homebrew.bintray.com/bottles/openssl-1.0.2j.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring openssl-1.0.2j.sierra.bottle.tar.gz
==> Using the sandbox
==> Caveats
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
  /usr/local/etc/openssl/certs

and run
  /usr/local/opt/openssl/bin/c_rehash

This formula is keg-only, which means it was not symlinked into /usr/local.

Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/openssl/lib
    CPPFLAGS: -I/usr/local/opt/openssl/include

==> Summary
🍺  /usr/local/Cellar/openssl/1.0.2j: 1,695 files, 12M
==> Installing mysql
==> Downloading https://homebrew.bintray.com/bottles/mysql-5.7.17.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring mysql-5.7.17.sierra.bottle.tar.gz
==> /usr/local/Cellar/mysql/5.7.17/bin/mysqld --initialize-insecure --user=cony --basedir=/usr/local/Cellar/mysql/5.7.17 --datadir=/usr/local/var/mysql --tmpdir=/tmp
==> Caveats
We've installed your MySQL database without a root password. To secure it run:
    mysql_secure_installation

To connect run:
    mysql -uroot

To have launchd start mysql now and restart at login:
  brew services start mysql
Or, if you don't want/need a background service you can just run:
  mysql.server start
==> Summary
🍺  /usr/local/Cellar/mysql/5.7.17: 14,226 files, 444.4M

加入开机启动

➜  ~ cp /usr/local/opt/mysql/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
➜  ~ cp /usr/local/opt/mysql/homebrew.mxcl.mysql.plist /Users/cony/Library/LaunchAgents/
➜  ~ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
➜  ~ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

mysql命令:

mysql.server start  # mysql 开启
mysql.server stop   # mysql 关闭

初始化mysql数据库:

➜  ~ cd /usr/local/Cellar/mysql/5.7.17/bin
➜  ~ ./mysql_install_db

设置root账户和密码:

./mysql_secure_installation 一直跟着提示走就行

Redis安装

➜  ~ brew install redis
==> Downloading https://homebrew.bintray.com/bottles/redis-3.2.6.sierra.bottle.tar.g
######################################################################## 100.0%
==> Pouring redis-3.2.6.sierra.bottle.tar.gz
==> Caveats
To have launchd start redis now and restart at login:
  brew services start redis
Or, if you don't want/need a background service you can just run:
  redis-server /usr/local/etc/redis.conf
==> Summary
🍺  /usr/local/Cellar/redis/3.2.6: 11 files, 1.7M

redis默认配置文件不允许以Deamon方式运行,因此需要先修改配置文件

➜  ~ vi /usr/local/etc/redis.conf

将daemonize修改为yes,然后载入配置文件即可实现后台进程启动

redis-server /usr/local/etc/redis.conf

加入开机启动

➜  ~ cp /usr/local/Cellar/redis/3.2.6/homebrew.mxcl.redis.plist /Users/cony/Library/LaunchAgents/

测试redis server是否启动

➜  ~ redis-cli ping
PONG

php7安装

brew install php70 --without-apache --with-fpm

➜  ~ brew install php70 --without-apache --with-fpm
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
No changes to formulae.

==> Installing php70 from homebrew/php
==> Installing dependencies for homebrew/php/php70: gettext, icu4c, jpeg, libxml2, unixodbc, readline
==> Installing homebrew/php/php70 dependency: gettext
==> Downloading https://homebrew.bintray.com/bottles/gettext-0.19.8.1.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring gettext-0.19.8.1.sierra.bottle.tar.gz
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

macOS provides the BSD gettext library and some software gets confused if both are in the library path.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/gettext/lib
    CPPFLAGS: -I/usr/local/opt/gettext/include

==> Summary
🍺  /usr/local/Cellar/gettext/0.19.8.1: 1,934 files, 16.9M
==> Installing homebrew/php/php70 dependency: icu4c
==> Downloading https://homebrew.bintray.com/bottles/icu4c-58.2.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring icu4c-58.2.sierra.bottle.tar.gz
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

macOS provides libicucore.dylib (but nothing else).

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/icu4c/lib
    CPPFLAGS: -I/usr/local/opt/icu4c/include

==> Summary
🍺  /usr/local/Cellar/icu4c/58.2: 242 files, 65M
==> Installing homebrew/php/php70 dependency: jpeg
==> Downloading https://homebrew.bintray.com/bottles/jpeg-8d.sierra.bottle.2.tar.gz
######################################################################## 100.0%
==> Pouring jpeg-8d.sierra.bottle.2.tar.gz
🍺  /usr/local/Cellar/jpeg/8d: 19 files, 708.3K
==> Installing homebrew/php/php70 dependency: libxml2
==> Downloading https://homebrew.bintray.com/bottles/libxml2-2.9.4_2.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring libxml2-2.9.4_2.sierra.bottle.tar.gz
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

macOS already provides this software and installing another version in
parallel can cause all kinds of trouble.

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/libxml2/lib
    CPPFLAGS: -I/usr/local/opt/libxml2/include

==> Summary
🍺  /usr/local/Cellar/libxml2/2.9.4_2: 277 files, 9.8M
==> Installing homebrew/php/php70 dependency: unixodbc
==> Downloading https://homebrew.bintray.com/bottles/unixodbc-2.3.4.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring unixodbc-2.3.4.sierra.bottle.tar.gz
🍺  /usr/local/Cellar/unixodbc/2.3.4: 39 files, 952.5K
==> Installing homebrew/php/php70 dependency: readline
==> Downloading https://homebrew.bintray.com/bottles/readline-7.0.1.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring readline-7.0.1.sierra.bottle.tar.gz
==> Caveats
This formula is keg-only, which means it was not symlinked into /usr/local.

macOS provides the BSD libedit library, which shadows libreadline.
In order to prevent conflicts when programs look for libreadline we are
defaulting this GNU Readline installation to keg-only.


Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

    LDFLAGS:  -L/usr/local/opt/readline/lib
    CPPFLAGS: -I/usr/local/opt/readline/include

==> Summary
🍺  /usr/local/Cellar/readline/7.0.1: 46 files, 2M
Warning: homebrew/php/php70: this formula has no --with-fpm option so it will be ignored!
Warning: homebrew/php/php70: this formula has no --without-apache option so it will be ignored!
==> Installing homebrew/php/php70
==> Downloading https://homebrew.bintray.com/bottles-php/php70-7.0.14_7.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring php70-7.0.14_7.sierra.bottle.tar.gz
==> Caveats
The php.ini file can be found in:
    /usr/local/etc/php/7.0/php.ini

✩✩✩✩ Extensions ✩✩✩✩

If you are having issues with custom extension compiling, ensure that
you are using the brew version, by placing /usr/local/bin before /usr/sbin in your PATH:

      PATH="/usr/local/bin:$PATH"

PHP70 Extensions will always be compiled against this PHP. Please install them
using --without-homebrew-php to enable compiling against system PHP.

✩✩✩✩ PHP CLI ✩✩✩✩

If you wish to swap the PHP you use on the command line, you should add the following to ~/.bashrc,
~/.zshrc, ~/.profile or your shell's equivalent configuration file:

      export PATH="$(brew --prefix homebrew/php/php70)/bin:$PATH"

✩✩✩✩ FPM ✩✩✩✩

To launch php-fpm on startup:
    mkdir -p ~/Library/LaunchAgents
    cp /usr/local/opt/php70/homebrew.mxcl.php70.plist ~/Library/LaunchAgents/
    launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist

The control script is located at /usr/local/opt/php70/sbin/php70-fpm

OS X 10.8 and newer come with php-fpm pre-installed, to ensure you are using the brew version you need to make sure /usr/local/sbin is before /usr/sbin in your PATH:

  PATH="/usr/local/sbin:$PATH"

You may also need to edit the plist to use the correct "UserName".

Please note that the plist was called 'homebrew-php.josegonzalez.php70.plist' in old versions
of this formula.

With the release of macOS Sierra the Apache module is now not built by default. If you want to build it on your system
you have to install php with the --with-httpd24 option. See  brew options php70  for more details.

To have launchd start homebrew/php/php70 now and restart at login:
  brew services start homebrew/php/php70
==> Summary
🍺  /usr/local/Cellar/php70/7.0.14_7: 332 files, 38.8M

设置php的全局变量

➜  ~ vi ~/.zshrc
export LOCALBIN=/usr/local/bin
export SBIN=/usr/sbin
export PATH=$LOCALBIN:$SBIN:$PATH
export PHPBIN=$(brew --prefix homebrew/php/php70)/bin
export PATH=$PHPBIN:$PATH

➜  ~ source ~/.zshrc # 即时生效

安装需要的php扩展

➜  ~ brew install homebrew/php/php70-gearman homebrew/php/php70-mongodb homebrew/php/php70-phalcon homebrew/php/php70-redis
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
nativefier                                                                             spdlog
==> Updated Formulae
arangodb                                                  nghttp2                                                   passenger

==> Installing php70-gearman from homebrew/php
==> Installing dependencies for homebrew/php/php70-gearman: boost, libevent, gearman
==> Installing homebrew/php/php70-gearman dependency: boost
==> Downloading https://homebrew.bintray.com/bottles/boost-1.63.0.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring boost-1.63.0.sierra.bottle.tar.gz
🍺  /usr/local/Cellar/boost/1.63.0: 12,491 files, 397.1M
==> Installing homebrew/php/php70-gearman dependency: libevent
==> Downloading https://homebrew.bintray.com/bottles/libevent-2.0.22.sierra.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring libevent-2.0.22.sierra.bottle.1.tar.gz
🍺  /usr/local/Cellar/libevent/2.0.22: 734 files, 2.0M
==> Installing homebrew/php/php70-gearman dependency: gearman
==> Downloading https://homebrew.bintray.com/bottles/gearman-1.1.14.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring gearman-1.1.14.sierra.bottle.tar.gz
==> Caveats
To have launchd start gearman now and restart at login:
  brew services start gearman
Or, if you don't want/need a background service you can just run:
  gearmand -d
==> Summary
🍺  /usr/local/Cellar/gearman/1.1.14: 211 files, 1.7M
==> Installing homebrew/php/php70-gearman
==> Downloading https://github.com/wcgallego/pecl-gearman/archive/gearman-2.0.1.tar.gz
==> Downloading from https://codeload.github.com/wcgallego/pecl-gearman/tar.gz/gearman-2.0.1
######################################################################## 100.0%
==> /usr/local/opt/php70/bin/phpize
==> ./configure --prefix=/usr/local/Cellar/php70-gearman/2.0.1 --with-php-config=/usr/local/opt/php70/bin/php-config --with-gearman=/usr/local/opt/gearman
==> make
==> Caveats
To finish installing gearman for PHP 7.0:
  * /usr/local/etc/php/7.0/conf.d/ext-gearman.ini was created,
    do not forget to remove it upon extension removal.
  * Validate installation via one of the following methods:
  *
  * Using PHP from a webserver:
  * - Restart your webserver.
  * - Write a PHP page that calls "phpinfo();"
  * - Load it in a browser and look for the info on the gearman module.
  * - If you see it, you have been successful!
  *
  * Using PHP from the command line:
  * - Run `php -i "(command-line 'phpinfo()')"`
  * - Look for the info on the gearman module.
  * - If you see it, you have been successful!
==> Summary
🍺  /usr/local/Cellar/php70-gearman/2.0.1: 7 files, 102.9K, built in 22 seconds
==> Installing php70-mongodb from homebrew/php
==> Downloading https://homebrew.bintray.com/bottles-php/php70-mongodb-1.2.2_1.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring php70-mongodb-1.2.2_1.sierra.bottle.tar.gz
==> Caveats
To finish installing mongodb for PHP 7.0:
  * /usr/local/etc/php/7.0/conf.d/ext-mongodb.ini was created,
    do not forget to remove it upon extension removal.
  * Validate installation via one of the following methods:
  *
  * Using PHP from a webserver:
  * - Restart your webserver.
  * - Write a PHP page that calls "phpinfo();"
  * - Load it in a browser and look for the info on the mongodb module.
  * - If you see it, you have been successful!
  *
  * Using PHP from the command line:
  * - Run `php -i "(command-line 'phpinfo()')"`
  * - Look for the info on the mongodb module.
  * - If you see it, you have been successful!
==> Summary
🍺  /usr/local/Cellar/php70-mongodb/1.2.2_1: 3 files, 655.2K
==> Installing php70-phalcon from homebrew/php
==> Downloading https://homebrew.bintray.com/bottles-php/php70-phalcon-3.0.2.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring php70-phalcon-3.0.2.sierra.bottle.tar.gz
==> Caveats
To finish installing phalcon for PHP 7.0:
  * /usr/local/etc/php/7.0/conf.d/ext-phalcon.ini was created,
    do not forget to remove it upon extension removal.
  * Validate installation via one of the following methods:
  *
  * Using PHP from a webserver:
  * - Restart your webserver.
  * - Write a PHP page that calls "phpinfo();"
  * - Load it in a browser and look for the info on the phalcon module.
  * - If you see it, you have been successful!
  *
  * Using PHP from the command line:
  * - Run `php -i "(command-line 'phpinfo()')"`
  * - Look for the info on the phalcon module.
  * - If you see it, you have been successful!
==> Summary
🍺  /usr/local/Cellar/php70-phalcon/3.0.2: 5 files, 3.5M
==> Installing php70-redis from homebrew/php
==> Downloading https://github.com/phpredis/phpredis/archive/3.0.0.tar.gz
==> Downloading from https://codeload.github.com/phpredis/phpredis/tar.gz/3.0.0
######################################################################## 100.0%
==> /usr/local/opt/php70/bin/phpize
==> ./configure --prefix=/usr/local/Cellar/php70-redis/3.0.0 --with-php-config=/usr/local/opt/php70/bin/php-config
==> make
==> Caveats
To finish installing redis for PHP 7.0:
  * /usr/local/etc/php/7.0/conf.d/ext-redis.ini was created,
    do not forget to remove it upon extension removal.
  * Validate installation via one of the following methods:
  *
  * Using PHP from a webserver:
  * - Restart your webserver.
  * - Write a PHP page that calls "phpinfo();"
  * - Load it in a browser and look for the info on the redis module.
  * - If you see it, you have been successful!
  *
  * Using PHP from the command line:
  * - Run `php -i "(command-line 'phpinfo()')"`
  * - Look for the info on the redis module.
  * - If you see it, you have been successful!
==> Summary
🍺  /usr/local/Cellar/php70-redis/3.0.0: 5 files, 405.3K, built in 20 seconds

php扩展介绍

php70-amqp  高级消息队列协议
php70-ast   抽象语法树
php70-blitz 用C语言开发的快速的PHP模板引擎
php70-couchbase 新兴的NOSQL数据库
php70-gearman  异步任务分发处理利器
php70-geoip 根据IP获取地理位置及计算距离的方法,包括获取目标IP所在的国家地区等信息
php70-gmagick 图像生成和处理
php70-gmp 是一个开源的数学运算库,它可以用于任意精度的数学运算
php70-hprose 高性能远程对象服务引擎
php70-ioncubeloader 加密PHP的工具
...

加入开机自启

➜  ~  cp /usr/local/opt/php70/homebrew.mxcl.php70.plist ~/Library/LaunchAgents/
➜  ~  cp /usr/local/opt/php70/homebrew.mxcl.php70.plist /Users/cony/Library/LaunchAgents/
➜  ~ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist
➜  ~ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.php70.plist

配置nginx

➜  ~ vi /usr/local/etc/nginx/servers/test.local.com.conf
    server {
        listen       80;
        server_name  test.local.com;
        root /Users/cony/Work/php/test;

        location / {
            index  index.html index.htm index.php;
        }

        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
    
➜  ~ sudo nginx -s reload
➜  ~ sudo vi /etc/hosts # 添加 127.0.0.1 test.local.com

参考资料

Mac 下 Nginx、PHP、MySQL 和 PHP-fpm 的安装和配置

[MAC-brew安装 php7 nginx mysql]

在mac上通过Homebrew安装redis

MAC OX下PHP和Nginx的配置

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

推荐阅读更多精彩内容