看PHP,MYSQL,都出了新版本,想尝尝鲜,就试着安装了一下,然后把安装过程记了下来,希望能对学习PHP的新手有些帮助,斑竹可以考虑精一下了
Windows XP下全新安装Apache2,PHP5,MYSQL5,Zend的简单过程
一、下载地址:
Apache2.0.50 :http://httpd.apache.org/download.cgi
PHP5.0.2 :http://cn2.php.net/get/php-5.0.2-Win32.zip/from/a/mirror
MYSQL5.0.2:http://dev.mysql.com/downloads/mysql/5.0.html
Zend2.5.2 :http://www.zend.com/store/free_download.php?pid=13]
软件的安装偶就不说了,其中只有PHP下的是zip包,直接解压就可以了。
安装顺序就是上面列出来的顺序,Zend我是最后等所有的运行都没问题后才装的。
二、简单安装过程:
(一)Apache:
Apache2.0.50的安装很简单,我就直接把他装到了E盘根目录下(我C盘是系统盘,D盘是temp盘,偶发现在windows下单独拿个分区来做临时文件的存放地对系统的速度影响不小,这样做能提升系统运行的速度,感兴趣的朋友可以试试看),安装完后我的apache目录就是E:apache2
(二)PHP:
我是直接解压缩放到E盘php目录下了,这样查找文件会方便许多。
(三)Mysql:
直接装到E:mysql下,它的默认目录太长,是在C盘下的,偶的C盘是除windows的文件外别的一概不放的。
(四)Zend:
所有的调试都正常后我把Zend装到了E:program fileszend下
三、配置过程:
(一)http.conf
这个文件我改了几个地方:
把PHP直接作为apache的一个模块运行,我在里面加了两句:
CODE: [Copy to clipboard]
LoadModule php5_module "E:/php/php5apache2.dll"
AddType application/x-httpd-php .php
我在E:apache2目录下建立了一个www的目录用于存放我的站点文件,在http.conf里改了这样一句话:
把DocumentRoot "E:/Apache2/htdocs"改成了DocumentRoot "E:/Apache2/www"
Apache2.0.x于1.3.x相比2.0.x默认不能直接列目录,偶感觉不爽,就改了:
把DocumentRoot "E:/Apache2/www"这句下的如下语句
CODE: [Copy to clipboard]
Options FollowSymLinks
AllowOverride None
/>
改为:
CODE: [Copy to clipboard]
Options Indexes FollowSymLinks
AllowOverride None
/>
把apache的默认字符设置为中文简体:
AddDefaultCharset GB2312
修改目录的默认首页:
DirectoryIndex 后面写上你想设置为首页的文件名,如:index.html index.php等
别的就没再动什么地方
注意一点的是,要使这些配置生效需要重新启动apache
(二)php.ini
以前用php4.x的时候觉得配置起来很简单,所以偶用PHP5也直接那么配了,谁知道完了mysql不能用,说是无法连接动态库,我仔细检查了一下 php_mysql.dll明明存在,可就说找不到,这点让我郁闷了N久,偶重新解压了php5也没用,后来在php的install文档里发现了这么一句话: php_mysql.dll MySQL functions PHP >= 5.0.0, requires libmysql.dll (bundled)
于是偶才找到了原因......
配置php5.0.2是这样来过的:
把php.ini-dist复制到C:windows 下改名为 php.ini(装过php的都做过吧)
然后修改了几个地方:
extension_dir = "E:phpext" (指定动态连接库的目录,php5和php4不同的地方就是它的动态连接库目录变了,这在它的文档结构里有详细的说明)
然后把下面几句前面的分号去掉
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
;extension=php_imap.dll
;extension=php_mysql.dll
接下来修改了一些文件上传以及内存使用最大限制:
memory_limit = 20M
post_max_size = 20M
upload_max_filesize = 20M
别的就没改什么了,这里修改过php.ini以后也要重新启动apache
接下来一点很重要的就是把php目录下的 libmysql.dll 和 libmysqli.dll 复制到windows/system32下,如果不这样做,mysql动态连接库就无法正常加载。
(三)Mysql和Zend的配置
现在Apache和PHP都已经配置好了,在浏览器里输入localhost看看结果,运行成功,然后输入localhost/phpmyadmin看也成功。郁闷,Phpmyadmin提示错误信息:
QUOTE:
MySQL 返回:
#1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
奇怪了,偶明明装的是MYSQL最新版本怎么会客户端版本过低呢,真是郁闷啊
就此放了一下,经多次测试仍然不成功就先放弃了一下,玩了一把KOF97
然后在CCF.熊猫和IM286.ceo的帮助下,终于找到了原因:
落伍ceo:“升级客户端
新版本的mysql使用了新的密码验证方法
设置mysql密码时使用old_password可以解决这个问题”
CCF.熊猫:“使用old_password”重新设定密码就可以了”。
感谢这两位朋友,具体解决办法如下:
由于偶不知道怎么升级client,因为在windows 下 server和client是捆绑安装的,我就用了old_password的方法:
QUOTE:
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD(newpwd)
-> WHERE Host = some_host AND User = some_user;
mysql> FLUSH PRIVILEGES;
然后浏览“http://localhost/phpmyadmin”,OH YEAH! 测试成功!

本文討論了PHP中的crypt()和password_hash()的差異,以進行密碼哈希,重點介紹其實施,安全性和對現代Web應用程序的適用性。

文章討論了通過輸入驗證,輸出編碼以及使用OWASP ESAPI和HTML淨化器之類的工具來防止PHP中的跨站點腳本(XSS)。

自動加載PHP會在需要時自動加載類文件,從而通過減少內存使用和增強代碼組織來提高性能。最佳實踐包括使用PSR-4和有效組織代碼。

本文討論了在PHP中管理文件上傳大小的管理,重點是2MB的默認限制以及如何通過修改PHP.INI設置來增加它。

本文討論了PHP 7.1中引入的PHP中的無效類型,允許變量或參數為指定類型或NULL。它突出顯示了諸如提高可讀性,類型安全性和明確意圖的好處,並解釋瞭如何聲明

本文討論了unset()和unlink()功能在編程中的差異,重點關注其目的和用例。 unset()從內存中刪除變量,而unlink()從文件系統中刪除文件。兩者都對效率至關重要


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具