手上有一個vps搭了shadowsocks,還剩下一點空間,加上之前萬網域名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平臺啊,草!