手上有一个vps搭了*,还剩下一点空间,加上之前万网域名4块钱一年!所以想搞个个人站玩一下,于是想现在本机试试效果。
因为我自己玩,没什么人访问,再加上剩下的空间也不多,所以标准就是越小越好。。。所以选了这个组合。
开始前
先写好开启关闭进程的bat文件,我倒腾的时候一直用命令行启动和关闭再启动,loop,简直要崩溃了。
获取安装包
- Nginx:直接搜就好了
官网 - PHP:也很好找直接搜
官网 -
Redis:redis官方没有提供windows支持,但是微软提供了
The Redis project does not officially support Windows. However, the Microsoft Open Tech group develops and maintains this Windows port targeting Win64.
- php_redis:redis以扩展的形式在php下使用,和MySQL一样。比较坑爹的是,这个项目的主页上没有二进制文件下载,需要下载源码手动编译,当我编译完以后,我发现了他的二进制文件下载地址!
github项目主页
二进制文件网站
小心:下载的二进制文件必须和php版本号对应,线程对应,否则根本装不上扩展!
安装和配置
先装后装哪个都无所谓,而且我下的都是压缩包,解压就用的那种。下面的顺序主要是写起来方便描述
Redis
安装(解压)以后,运行redis-server.exe,不能关闭。这样就启动redis服务了,然后运行redis-cli.exe启动一个客户端,测试一下。
redis-server.exe不能关闭,关闭以后redis服务就停止了
可以使用RunHiddenConsole工具隐藏控制台。
nginx
解压就能用,启动nginx.exe,访问一下试试。
- 网站目录:
location / {
root html;
index index.html index.htm;
}
root是网站根目录,index是网站主页默认文件,自己看着改。不改是最好的,免得出错。
- php脚本处理:
#location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
这里要修改的是倒数第二行fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
,
$doucment_root变量的值是root定义的地址(在上面的配置中就是html目录)
- 其他
设置404,50x页面等,注释和示例很详细,推荐不要放到网站目录下面。
如果修改网站根目录,要求改两个location中的root,而且要用绝对路径,使用相对路径php转发以后找不到文件,不太懂为什么,要研究一下nginx转发的原理
PHP
打开php.ini文件(如果没有,把php.ini-development复制一份改成这个就可以了)。
-php-cgi
因为使用nginx,要用php-cgi,具体百度。
大概773行,修改为 cgi.fix_pathinfo=1
- 打开扩展目录
因为redis是以扩展形式使用的,包括其他很多都是以扩展形式使用,所以要打开。
大概在736行,取消注释(去掉分号)
extension_dir = "ext"
- 添加php_redis扩展
大概880行,一堆extension=******.dll
,加上一行extension=php_redis.dll
,这个就是phpredis的扩展文件了,phpredis解压出来吧”php_redis.dll”这个文件放到php目录的“ext”目录下面。如果还有其他的dll文件,也是一样的操作——放到“ext”目录下,然后添加一行extension=****.dll
测试文件:
<?php phpinfo(); ?>
如果页面能出现说明php配置好了,查看redis扩展,如果存在说明配置好了,如果没有,请检查扩展版本。
结束
完工!
最后我意识到,我的vps并不是windows平台啊,草!