一步一步學PHP(1): Windows下配置Nginx + PHP開發環境
1,下載並安裝nginx
1.1 下載地址:http://nginx.org/en/download.html http://nginx.org/download/nginx-1.3.0.zip
1.2 解壓 nginx-1.3.0.zip 到G:\webserver
1.3 到G:\webserver將nginx-1.3.0檔案夾重新命名為nginx
2,啟動nginx並測試nginx正常運行
2.1 到G:\webserver\nginx執行nginx.exe,在工作管理員可看到nginx.exe進程存在
2.2 在瀏覽器輸入http://127.0.0.1,可看到"Welcome to nginx!"表示nginx正常運行
3,瞭解PHP版本中VC9、VC6、Thread Safe、Non Thread Safe的區別
3.1 VC9 版本和 VC6 版本的區別 VC6 版本是使用 Visual Studio 6 編譯器編譯的,如果你的 PHP 是用 Apache 來架設的,那你就選擇 VC6 版本。
VC9 版本是使用 Visual Studio 9(2008) 編譯器編譯的,如果你的 PHP 是用 IIS 來架設的,那你就選擇 VC9 版本。
3.2 Thread Safe 和 Non Thread Safe 版本的區別 先從字面意思上理解,Thread Safe 是安全執行緒,執行時會進行線程(Thread)安全檢查,以防止有新要求就啟動新線程的 CGI 執行方式而耗盡系統資源。Non Thread Safe 是非安全執行緒,在執行時不進行線程(Thread)安全檢查。
再來看 PHP 的兩種執行方式:ISAPI 和 FastCGI。
ISAPI 執行方式是以 DLL 動態庫的形式使用,可以在被使用者請求後執行,在處理完一個使用者請求後不會馬上消失,所以需要進行安全執行緒檢查,這樣來提高程式的執行效率,所以如果是以 ISAPI 來執行 PHP,建議選擇 Thread Safe 版本;
而 FastCGI 執行方式是以單一線程來執行操作,所以不需要進行線程的安全檢查,除去安全執行緒檢查的防護反而可以提高執行效率,所以,如果是以 FastCGI 來執行 PHP,建議選擇 Non Thread Safe 版本。
4,下載並安裝php
4.1 下載地址:http://windows.php.net/download http://windows.php.net/downloads/releases/php-5.4.3-nts-Win32-VC9-x86.zip
4.2 到G:\webserver目錄下建立子檔案夾php
4.3 解壓php-5.4.3-nts-Win32-VC9-x86.zip 到G:\webserver\php目錄下
5,建立源檔案目錄
5.1 將nginx目錄下的html目錄拷貝到G:\webserver\目錄下,並重新命名為webroot
6,配置並啟動nginx
6.1 修改G:\webserver\nginx\conf\nginx.conf,與未修改前的區別如下:
[[email protected] test]# diff nginx.conf nginx.conf.default 44,45c44,45< root G:/webserver/webroot;< index index.html index.htm index.php;---> root html;> index index.html index.htm;65,70c65,71< location ~ \.php$ {< fastcgi_pass 127.0.0.1:9000;< fastcgi_index index.php;< fastcgi_param SCRIPT_FILENAME G:/webserver/webroot$fastcgi_script_name;< include fastcgi_params;< }---> #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;> #}[[email protected] test]#
6.2 在命令列狀態下,到G:\webserver\nginx目錄下執行nginx.exe -t 測試組態檔案是否正確
6.3 在G:\webserver\nginx目錄下執行nginx.exe啟動nginx
6.4 在命令列狀態下,到G:\webserver\nginx目錄下執行nginx.exe -s stop停止nginx,nginx.ex -s reload重新載入配置
7,配置並啟動php
7.1 到G:\webserver\php目錄下,為了儲存原始設定檔,拷貝php.ini-development為php.ini.default
7.2 將php.ini-development重新命名為php.ini (這時有php.ini和php.ini.default兩個相同的設定檔)
7.3 開啟php.ini,尋找short_open_tag = Off 修改為 尋找short_open_tag = On
7.4 為了可以開啟常用的擴充,並設定預設時區為重慶,在檔案末尾加入如下內容:
extension_dir = "G:\webserver\php\ext"extension=php_curl.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_mysql.dll extension=php_mysqli.dll extension=php_pdo_mysql.dll extension=php_pdo_sqlite.dll extension=php_sockets.dll extension=php_sqlite.dll extension=php_sqlite3.dll extension=php_exif.dll date.timezone = Asia/Chongqing
7.5 和未修改的設定檔php.ini.default對比,區別如下
[[email protected] test]# diff php.ini php.ini.default 211c211< short_open_tag = On---> short_open_tag = Off1860,1874d1859< < extension_dir = "G:\webserver\php\ext"< extension=php_curl.dll < extension=php_gd2.dll < extension=php_mbstring.dll < extension=php_mysql.dll < extension=php_mysqli.dll < extension=php_pdo_mysql.dll < extension=php_pdo_sqlite.dll < extension=php_sockets.dll < extension=php_sqlite.dll < extension=php_sqlite3.dll < extension=php_exif.dll < date.timezone = Asia/Chongqing< [[email protected] test]#
7.6 啟動php:G:\webserver\php\php-cgi.exe -b 127.0.0.1:9000 -c G:\webserver\php\php.ini
8,測試php開發環境配置成功
8.1 在webroot目錄下建立phpinfo.php,儲存如下內容:
phpinfoWelcome to php
8.2 在瀏覽器輸入http://127.0.0.1/phpinfo.php可看到"Welcome to php"和phpinfo資訊,表示php配置成功