Windows10搭建PHP7開發環境

3年前寫了一篇《Windows下搭建PHP開發環境》以後就再也沒有碰過PHP了,最近新發布了PHP7而後回去看了一下以前寫的文章,發現不少配置都已通過時,因此就打算再寫一篇新的。
php

安裝準備 – 系統:Windows 10

安裝軟件

安裝Apache

首先解壓httpd-2.4.18-win64-VC14.zip,爲了方便管理我將解壓獲得的文件夾Apache24放到C:/PHPServer目錄下。同時對Apache配置文件httpd.conf中用到路徑的配置做相應修改:html

ServerRoot "C:/PHPServer/Apache24"

Document Root "C:/PHPServer/Apache24/htdocs"

<Diretory "C:/PHPServer/Apache24/htdocs">
...
</Diretory>

 

以管理員身份啓動命令提示符,使用cd C:/PHPServer/Apache24/bin切換到apache的命令目錄,在命令行輸入httpd.exe便可啓動apache服務器。
在瀏覽器輸入地址http://localhost,出現It works!即表明apache啓動成功。
這種方式並無將apache安裝成爲系統服務,命令行退出了服務也就結束了。安裝成服務也很是簡單,只須要執行http.exe -k install,卸載服務http.exe -k uninstall。安裝成功後啓動bin目錄下的ApacheMonitor能夠對服務器進行管理。
ApacheMonitormysql

安裝Mysql

Mysql官方提供兩種安裝方式,一種是常規的msi安裝包的方式,另外一種是壓縮包形式的免安裝方式。我以前的一篇博客就是用的msi安裝包,因此這裏嘗試一下壓縮包的形式安裝。
首先解壓mysql-5.7.10-winx64.zip,爲了方便執行Mysql命令能夠將Mysql的bin目錄添加到系統的環境變量Path。安裝Mysql前須要指定數據文件的存放路徑,默認路徑爲Mysql目錄下的data目錄,須要手工建立這個目錄。目錄建立好後能夠開始初始化數據了:
Win10.pngredis

// 初始化數據庫文件
mysqld --initialize-insecure --console

 

經常使用參數說明sql

  • –console 在命令行輸出執行的信息
  • –initialize-insecure 初始化數據不生成登陸密碼 
  • –initialize 初始化數據並隨機生成登陸密碼
  • –user=root 指定數據庫超級用戶,默認root,也能夠改爲別的賬號
  • –defaults-file=C:/Program Files/Mysql/my.cnf 指定mysql配置文件
  • –basedir 指定安裝目錄
  • –datadir 指定數據存放目錄

mysql配置文件樣例(my.cnf)數據庫

[mysqld]
basedir=C:/Program Files/MySQL
datadir=D:/MySQLdata

 

數據初始完成後再從新執行一次mysqld啓動數據庫,使用mysqladmin -u root -p shutdown關閉數據庫,數據庫啓動完成後須要修改root密碼apache

// 若是使用--initialize初始化,須要輸入密碼登陸
mysql -u root --skip-password

// 修改用戶密碼爲123456
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

 

 

最後將Mysql安裝爲系統服務 mysqld --install (安裝前先關閉mysql)瀏覽器

安裝Php

在以前的博客中採用的是php做爲Apache模塊安裝運行,從php官網瞭解到,php7做爲Apache模塊安裝時僅支持VC6如下的Apache,不能和VC9以上的Apache一塊兒運行。因此推薦採用fastcgi形式安裝。
首先解壓php-7.0.0-Win32-VC14-x64.zip到C:/PHPServer/並重命名爲php7。將前面準備好的FastCGI模塊mod_fcgid-2.3.9-win64-VC14.zip解壓獲得mod_fcgid.so文件拷貝到Apache的modules文件夾。修改Apache配置文件httpd.conf添加FastCGI配置:服務器

LoadModule fcgid_module modules/mod_fcgid.so

<IfModule fcgid_module>
  FcgidInitialEnv PHPRC "C:/PHPServer/php7"
  FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
  AddType application/x-httpd-php .php
  <Files ~ "\.php$>"
    AddHandler fcgid-script .php
    FcgidWrapper "C:/PHPServer/php7/php-cgi.exe" .php
  </Files>
</IfModule>

 

 

爲站點根目錄的Options增長ExecCGI,我設置的站點目錄爲C:/PHPServer/Apache24/htdocsphp7

<Directory "C:/PHPServer/Apache24/htdocs">
  AllowOverride All
  Options -Indexes +ExecCGI
</Directory>

 

找到DirectoryIndex index.html改成DirectoryIndex index.php index.html 站點默認加載index.php

Apache配置已經完成接着要配置php7,php的配置文件爲php.ini,文件夾中並無這個文件,但提供了php.ini-development和php.ini-production這兩個文件做爲參考,咱們直接將php.ini-development改成php.ini做爲配置文件便可。配置文件能夠設置php擴展庫,須要指定擴展庫所在的目錄。
找到php.ini中關於extension_dir的註釋,在後面直接添加extension_dir="C:/PHPServer/php7/ext"
開啓相應的庫只須要去除前面的分號(註釋)便可

extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_xmlrpc.dll

 

最後設置相應的時區date.timezone = Asia/Shanghai

配置完成,重啓Apache使配置生效。在站點目錄新建index.php文件,並輸入如下內容

<?php
    phpinfo();
?>

 

 

phpinfo.png

在配置中若是目錄帶有空格,須要使用 \ 進行轉義

IDE

就我所知,目前市場上比較好用的IDE應該是jetbrains開發的PhpStorm,不過軟件的受權仍是挺貴的。以前用過的Zend studio也是不錯的選擇,固然足夠熟練的話SublimeText或Vim均可以開發的很好,IDE並非最關鍵的。

 

新博客地址:http://arenby.com

相關文章
相關標籤/搜索