因爲windows下php擴展5.6的多餘7.0,故以php5.6爲開發環境。若是對擴展要求不高,可使用php7,安裝過程相似。php
約定:
環境安裝目錄:html
D:/phpsetup/ |——php |——php-5.6.22-Win32-VC11-x86 |——apache |——mysql |——www
下載地址:
http://php.net/mysql
windows版下載地址:
http://windows.php.net/downloadnginx
官網裏Windows的版本有不少。選擇哪一個版本呢?laravel
若是你的PHP應用程序以FastCGI方式運行,請選擇Non-Thread Safe (NTS) 版本;
若是你的PHP應用程序和Apache一塊兒,請選擇 Thread Safe (TS) 版本。redis
本文用的apache+php組合,因此選擇ts(Thread Safe)版本。根據操做系統選擇x64或者x86。sql
大多數版本的PHP使用VC9, VC11 or VC14 (Visual Studio 2008, 2012 or 2015分別編譯)進行編譯的,因此你電腦上須要安裝VC運行環境。apache
電腦須要VC運行環境:
VC9 x86 :http://www.microsoft.com/en-us/download/details.aspx?id=5582
VC9 x64 :http://www.microsoft.com/en-us/download/details.aspx?id=15336
VC11 x86 or x64:http://www.microsoft.com/en-us/download/details.aspx?id=30679
VC14 x86 or x64 :http://www.microsoft.com/en-us/download/details.aspx?id=48145windows
本文以php-5.6.22-Win32-VC11-x86.zip爲例。
下載後解壓到D:\phpsetup\php\php-5.6.22-Win32-VC11-x86
目錄。瀏覽器
複製一份php.ini-development
文件爲php.ini
。
須要修改如下地方:
;extension_dir = "ext"
更改成
extension_dir = "D:\phpsetup\php\php-5.6.22-Win32-VC11-x86\ext"
提示:與apache搭配使用須要寫絕對位置。不然擴展加載不了。
;extension=php_curl.dll
去掉部分註釋:
extension=php_bz2.dll extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_gettext.dll ;extension=php_gmp.dll ;extension=php_intl.dll ;extension=php_imap.dll ;extension=php_interbase.dll ;extension=php_ldap.dll extension=php_mbstring.dll extension=php_exif.dll ; Must be after mbstring as it depends on it extension=php_mysql.dll extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll extension=php_pdo_odbc.dll extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll extension=php_pgsql.dll ;extension=php_shmop.dll ; The MIBS data available in the PHP distribution must be installed. ; See http://www.php.net/manual/en/snmp.installation.php ;extension=php_snmp.dll extension=php_soap.dll extension=php_sockets.dll extension=php_sqlite3.dll ;extension=php_sybase_ct.dll extension=php_tidy.dll extension=php_xmlrpc.dll extension=php_xsl.dll
date.timezone=PRC
openssl.cafile= cacert.pem
注意是絕對路徑。
[memcache] extension=php_memcache.dll [redis] extension=php_redis.dll
注意,須要下載對應版本的擴展:
如php_redis-2.2.7-5.6-ts-vc11-x86
區分ts,x86。
下載地址
http://pecl.php.net/package/redis/
http://pecl.php.net/package/memcache
http://pecl.php.net/package/SeasLog
http://pecl.php.net/package/xdebug
http://pecl.php.net/package/yar
PHP官網裏說明了,apache.org只提供舊的VC6版本,且不能使用 VC9+版本。apache.org已經不提供適合php的版本了。apache windows版本下載地址也給了下載建議:
PHP官網也建議到Apache Lounge下載。Apache Lounge提供了創建在x86和x64系統的VC9,vc14 VC11版本。PHP官方使用了他們提供的二進制文件構建Apache SAPIs。
Apache Lounge提供的下載地址:
http://www.apachelounge.com/download/VC11/
http://www.apachelounge.com/download/VC11/binaries/httpd-2.4.20-win64-VC11.zip
http://www.apachelounge.com/download/VC11/binaries/httpd-2.4.20-win32-VC11.zip
這裏選擇了httpd-2.4.20-win32-VC11.zip。
把下載好的httpd-2.4.20-win32-VC11.zip的包一樣解壓到D:/phpsetup/Apache24
目錄下。
接下來,咱們來配置apache,讓它可以和php協同工做。
進入apache的conf目錄,打開apache的配置文件httpd.conf。
修改apache軟件所在目錄:
ServerRoot "D:/phpsetup/Apache24"
修改主機名:
ServerName localhost:80
修改www目錄:
DocumentRoot "D:/phpsetup/www" <Directory "D:/phpsetup/www">
修改默認索引以支持PHP:
DirectoryIndex index.php index.html index.htm
開啓rewrite功能:
LoadModule rewrite_module modules/mod_rewrite.so
自定義404頁面(可選):
ErrorDocument 404 /missing.html
加載PHP模塊,注意絕對路徑:
#php5.6 LoadModule php5_module D:/phpsetup/php/php-5.6.22-Win32-VC11-x86/php5apache2_4.dll <IfModule php5_module> PHPIniDir "D:/phpsetup/php/php-5.6.22-Win32-VC11-x86/" AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps </IfModule>
若是是php7,相應更改便可:
#php7 LoadModule php7_module D:/phpsetup/php/php-7.0.13-Win32-VC14-x64/php7apache2_4.dll <IfModule php7_module> PHPIniDir "D:/phpsetup/php/php-7.0.13-Win32-VC14-x64/" AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps </IfModule>
注意:若是是PHP5.4版本,php目錄裏只有php5apache2_2.dll
,須要和Apache2.2搭配。
因此,安裝php5.6必定要確認PHP安裝包裏是否有php5apache2_4.dll
文件。
能夠開啓虛擬主機配置文件:
Include conf/extra/httpd-vhosts.conf
默認httpd-vhosts.conf文件裏面寫的是供參考的,一但啓用該文件,請正確配置,不然沒法啓用apache服務。
虛擬主機示例:
<VirtualHost *:80> DocumentRoot "D:/www/app/laravel-5-blog/public/" ServerName laravel-5-blog.fhy.com DirectoryIndex index.php <Directory "D:/www/app/laravel-5-blog/"> AllowOverride All </Directory> ErrorLog "logs/laravel-5-blog.fhy.com-error.log" CustomLog "logs/laravel-5-blog.fhy.com-access.log" common </VirtualHost>
其中DocumentRoot設置項目所在路徑,ServerName設置主機名,DirectoryIndex設置入口文件;Directory裏AllowOverride設置開啓.htaccess功能。
能夠開啓主機別名配置文件:
Include conf/extra/httpd-alias.conf
若是安裝的PHP x64位版本,Apache也須要是x64位版本的。而後還要將php目錄下的libeay32.dll
、ssleay32.dll
、libssh2.dll
以及ext目錄下的php_curl.dll
等四個文件,都複製放到System32目錄下。不然curl擴展沒法使用。(http://my.oschina.net/lsfop/blog/496181)
運行方式一:
手動運行bin目錄下的ApacheMonitor.exe
運行方式二:
將apache安裝爲系統服務,能夠開機自動啓動。
以管理員權限運行cmd。
進入apache24的bin目錄,安裝Apache 服務:
httpd -k install
中止Apache
httpd -k stop
重啓Apache
httpd -k restart
卸載Apache服務
httpd -k uninstall
測試Apache配置文件httd.conf
httpd -t
查看Apache版本
httpd -V
Apache命令行幫助
httpd -h
刪除服務:
sc delete Apache2.4
成功啓動Apache後,在www目錄編寫phpinfo.php:
<?php echo phpinfo();
瀏覽器地址欄輸入localhost/phpinfo.php,顯示PHP相關信息即代表成功了。
Linux下安裝推薦編譯安裝,不用考慮TS、NTS區別。版本建議64位(看機器是否支持)。
PHP7: http://php.net/get/php-7.0.13.tar.bz2/from/a/mirror
php5: http://php.net/get/php-5.6.28.tar.bz2/from/a/mirror
Nginx: http://nginx.org/download/nginx-1.10.2.tar.gz
Windows下安裝時注意:
須要先安裝VC11或VC14:
1)VC11: https://www.microsoft.com/en-us/download/details.aspx?id=30679
2)VC14: https://www.microsoft.com/en-us/download/details.aspx?id=48145
一、若是使用Apache,請使用TS版本PHP:
PHP7:
1)VC14_x86: http://windows.php.net/downloads/releases/php-7.0.13-Win32-VC14-x86.zip
2)VC14_x64:http://windows.php.net/downloads/releases/php-7.0.13-Win32-VC14-x86.zip
PHP5:
1)VC11_x86: http://windows.php.net/downloads/releases/php-5.6.28-Win32-VC11-x86.zip
1)VC11_x64: http://windows.php.net/downloads/releases/php-5.6.28-Win32-VC11-x64.zip
Apache:
一、VC14_x64: https://www.apachelounge.com/download/VC14/binaries/httpd-2.4.23-win64-VC14.zip
二、VC14_x86: https://www.apachelounge.com/download/VC14/binaries/httpd-2.4.23-win32-VC14.zip
三、VC11_x64:https://www.apachelounge.com/download/VC11/binaries/httpd-2.4.23-win64-VC11.zip
四、VC11_x86:https://www.apachelounge.com/download/VC11/binaries/httpd-2.4.23-win32-VC11.zip
搭配原則是:VC14+PHP7_TS+Apache_VC14 、VC11+PHP5_TS+Apache_VC11。
二、若是使用Nginx,請使用NTS版本PHP:
PHP7:
1)VC14_x86: http://windows.php.net/downloads/releases/php-7.0.13-nts-Win32-VC14-x86.zip
2)VC14_x64:http://windows.php.net/downloads/releases/php-7.0.13-nts-Win32-VC14-x64.zip
PHP5:
1)VC11_x86: http://windows.php.net/downloads/releases/php-5.6.28-nts-Win32-VC11-x86.zip
1)VC11_x64: http://windows.php.net/downloads/releases/php-5.6.28-nts-Win32-VC11-x64.zip