win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置
一、說明
以前配置apache+php+mysql都是參考網上的,一般都沒有什么問題。最近公司有個任務需要在工作電腦上配置apache+php+mysql, 于是到它們的各個官網上下載了最新的版本,按照網上一步一步走,但是發現并沒有那么順利,中間出了各種問題,到處找資料,還好最后都解決了,現在寫下來給大家參考一下。
apache:?http://httpd.apache.org/download.cgi version: 2.4.18
php: http://www.php.net/downloads.php version: 7.0.2
mysql:?http://dev.mysql.com/downloads/mysql/ version: 5.7.10
如圖:
二、配置
1.php配置
首先,由于php7.0.2是用vc14編譯,所以需要vc14的支持,如果您的電腦安裝了vs2015則可忽略,否則你需要到這里https://www.microsoft.com/en-US/download/details.aspx?id=48145下載vc14,如下圖所示:
然后,將php目錄下的php.ini-development文件復制一份,并重新命名為php.ini作為php的默認配置文件,按以下步驟進行修改:
a.添加擴展
只需去掉相應行前面的";"
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_xmlrpc.dll
b.配置目錄
修改擴展目錄,請提前在php目錄下創建custom文件夾,然后在custum文件夾下再創建兩個子文件夾,分別為upload和session
; On windows:
extension_dir = "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/ext"
? 修改上傳目錄
; http://php.net/upload-tmp-dir
upload_tmp_dir ="D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/custom/upload"
修改session目錄
session.save_path = "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/custom/session"
2.apache配置
打開apache目錄下conf文件夾中的http.conf文件,按以下步驟修改配置:
a.設置apache服務器根目錄
Define SRVROOT "D:/Program Files/apmServer/httpd-2.4.18-x64-vc11/Apache24"
ServerRoot "${SRVROOT}"
b.設置偵聽端口
Listen 80
? ? ?默認是80,通過在netstat -ano命令查看系統80端口是否被占用,如果被占用,請更換一個沒有被占用的端口
c.加載php模塊
在#LoadModule vhost_alias_module modules/mod_vhost_alias.so后面加上:
LoadModule php7_module "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/php7apache2_4.dll"
PHPIniDir "D:/Program Files/apmServer/php-7.0.2-Win32-VC14-x64/"
AddType application/x-httpd-php .php .html .htm
? ? ?注意:這里要是加載的php7模塊
d.安裝apache服務
以管理員身份打開命令行cmd,進入apache的bin目錄,輸入命令:httpd -k install -n apache24, 顯示安裝成功,但是啟動出錯
查看apache日志,發現只有這一行:
[Sat Jan 23 20:33:04.958214 2016] [ssl:warn] [pid 7236:tid 344] AH01909: localhost:443:0 server certificate does NOT include an ID which matches the server name
這是一個警告,并不是錯誤,似乎沒有什么用
打在服務,右鍵啟動apache24,彈出啟動失敗錯誤提示:
打開系統事件查看器查看系統日志,發現如下錯誤:
還差最后步,這一步和其它版本不一樣,我們需要給php添加環境變量,
確定,啟動apache24服務,成功。在瀏覽器里輸入localhost回車
如果看到這個頁面,恭喜你,成功了。
3.MySQL配置
a.修改配置文件
將mysql目錄下的my-default.ini文件復制一份,并命名為my.ini作為默認配置文件,主要配置如下:
[mysql]
default-character-set=utf8
[mysqld]
basedir = "D:/Program Files/apmServer/mysql-5.7.10-winx64"
datadir = "D:/Program Files/apmServer/mysql-5.7.10-winx64/data"
port = 3306
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
b.安裝sql服務
添加環境變量: MYSQL_HOME ? 值為mysql目錄的路徑:
給系統變量Path增加值:%MYSQL_HOME%\bin;
從命令行cmd中進入mysql目錄下的bin路徑,執行命令 mysqld --install,執行命令net start mysql啟動mysql服務,結果失敗
這是因為mysql5.7安裝包中不帶data文件夾,就算我們手動創建data文件夾,mysql啟動還是失敗,網上說可以從低版本的mysql中拷貝過來可以,本人沒試。
但是網上還有另一種方法:執行命令mysqld --initializ既可以自動創建data文件夾及需要的初始數據,親測過可以。
c.測試mysql
由于上一步中使用mysqld --initializ命令產生的數據中root賬戶的密碼是隨機的,所以我們沒辦法直接得到root的密碼,也就不能登入使用mysql
解決方法:
打開my.ini配置文件,在最后加上這一行:#skip-grant-tables,即使用mysql時跳過授權表,也就是無需登錄也能使用mysql。保存my.ini,重新啟動mysql服務。
在命令行中輸入命令mysql,回車,進入mysql
修改root密碼:update user set password=password('your password') where user='root';
? ? ? 不要忘記寫入數據庫: flush privileges;
然后退出mysql,重新登錄: mysql -u root -p,輸入剛才設置的密碼,回車成功。
由于mysql的安全策略,此時還不能使用該賬戶執行其它操作,必須得重新改一次密碼才可以。
修改密碼:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');此時會讓你輸入舊密碼才能執行。
到此所有配置成功!
?
總結2點與以前舊版本不一樣的地方:
1.php配置后需要增加系統變量
2.mysql需要命令生成初始化數據,并且需要手動更改root密碼
總結
以上是生活随笔為你收集整理的win7 64bit下最新Apahe2.4.18+php7.0.2+MySQL5.7.10配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我理解的--java 单例模式
- 下一篇: java怎么导入一个项目到eclipse