网上配置服务器教程多如牛毛,但是写的明明白白或者有配图,等你自己去实践你会发现问题还是非常的多,笔者就以双服务器配置演示一次,抛弃我使用很久的集成环境,到写这篇笔记时候,已经完美可以运行项目了,在配置过程中,还是遇到很多问题我都一一列出来,希望你们可以在遇到相同错误有个好的解决方案,在配置之前对于以前安装的集成环境卸载,然后用软件清理完注册表垃圾,什么管家之类都可以,不说名字了.接着去下载Nginx1.2版本windows的zip文件,一般不用msi,zip是绿色软件,重装系统也可以用,接着下载mysql5.5,zip版本,比较大,100多M,压缩版msi小好多,但是zip绿色版更好.这里所有软件都是win32位系统版本,windows7旗舰版上边测试的,还有php下载5.2.17,就是VC6编译的zip版本,这里有ts是安全版本,另一版本我在配置apache有问题,所以记住是ts版本,也就是生产环境版本,同时下载对应版本的源代码,这个如果你和我一样,打算用C/C++来开发php扩展,记住一定要下载这个对应版本源代码,否则编译扩展的时候不能成功,接着下载phpmyadmin数据库管理软件包吧,只有几M,选择多语言的,后边使用.还有就是apache服务器,这个我找了半天没有zip版本,只好下载msi版本.准备工作就这么多.
现在进入正题,先安装哪个呢,我是先解压php到C:/web/php5目录,以后我的开发软件apache,nginx,mysql都在c:/web下面对应文件夹不多说了.网站目录我放到G这个独立盘,所以后边的myphpadmin和mysql数据库data数据都在G盘,最后用thinkphp框架测试是否成功!
php配置:修改php.ini-recommended为php.ini.
542行extension_dir = "./"改为自己目录C:/web/php5/ext,644-708为模块选择需要的,
去掉前面分号就是启用.这里列出部分,下面列举常用的
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_sqlite.dll
553行 cgi.force_redirect = 1去掉分号
571行去掉分号cgi.fix_pathinfo=1
588行去掉分号并且改为1 cgi.rfc2616_headers =1
php要改的就这么多记住把php目录也就是php5添加到系统环境变量,不会的就不要往下看了,这样就不用复制到系统目录system32了,因为后边apache配置需要.
nginx配置:解压到nginx目录,打开conf\nginx.conf配置文件,44行就是网站目录G:/,在45行添加index.php如:index index.html index.htm index.php;
65-71行去掉#,69行去掉/scripts改成网站目录例如我的G:/ 因我的G盘就是网站目录
接着下载RunHiddenConsole.exe,功能是隐藏cmd窗口的.创建
start_nginx.bat和stop_nginx.bat用来启动和关闭php与nginx,这些cmd的命令后边我会给出下载包,不用你自己写四个功能分别是启动mysql,关闭mysql,启动nginx,关闭nginx,都认识吧.这样就可以启动php了,在G盘新建一个index.php输入 phpinfo()函数查看配置.不过这里不能像apache列出所有文件,在没有文件时候出现403错误,就是无权查看,不要担心接着看.
在nginx.conf里面http{}添加
autoindex on;列出目录
autoindex_exact_size off;关闭文件详细大小改成大概大小
autoindex_localtime on;时间为本地时间打开
注意分号后边注释可不要哦,然后保存文件,就可以启动了,默认服务器是80端口,不用输入直接输入127.0.0.1就可以了.
Mysql配置,解压即可,在mysql文件夹下面新建my.ini文件输入
[mysqld] basedir=C:/web/mysql datadir=G:/data
注意字符集不要设置,否则出现1067错误,就是这个文件错误,分别设置的是mysql目录和数据目录,数据重要所以不妨到c.
用cmd进入到c:\web\mysql\bin,这个会不,就是cd命令
输入命令 mysqld --install mysql5 --defaults-file=C:/web/mysql/my.ini
这个是注册服务到系统
接着 net start mysql5启动,相应的net stop mysql5就是关闭,后边有命令文件下载,压缩包版mysql默认用户root,密码空,把mysql的bin目录加入环境变量,打开cmd
输入mysql -uroot -p;就进入了,说明mysql安装成功啦.
安装phpmyadmin,解压到G盘根目录,文件夹就是phpmyadmin,现在在nginx服务器上面就可以操作mysql,不过默认是不能密码为空,空密码不能登陆,出现1045错误.修改libraries/config.default.php 422行为true
phpmyadmin下面config.sample.inc.php 36行为true.
就可以用root空密码了,注意重启nginx哦,mysql哦.登陆进去,首先是添加密码.
接着进去修改mysql-user表,添加root密码并使用password函数.这样重启mysql就可以正常了,注意改回上边的两个false为true.
这里刚刚修改密码后要重启mysql,最好清除缓存和cookies,否则容易出现1045错误,明明密码正确不能登陆切记!!!
apache配置;一路点下一步注意这一过程中端口选择8080,后边配置中改也可以.在安装完以后,apache启动不了,我的就是这个问
我想是前面装过集成环境或是nginx引起的,不管他,自己配置好了,把php5路径添加到环境变量,不然后边apache启动不了,或者复制到system32,选择前者
接着打开conf/httpd.conf修改配置.
ServerRoot "C:/web/apache" #apache服务器目录
Listen 8080 #端口号
LoadFile "C:/web/php5/libmysql.dll"
LoadModule php5_module "C:/web/php5/php5apache2_2.dll"
PHPIniDir "C:/web/php5/php.ini" #三行就是启动php的
ServerName 127.0.0.1:8080 #服务器名称新添加
DocumentRoot "G:/" #网站目录
<Directory "G:/"> # 同上
DirectoryIndex index.php index.html # 添加index.php
AddType application/x-httpd-php .php #添加php文件类型
现在就可以启动apache了,完美可以支持mysql,php用phpmyadmin测试即可.
没有截图,这个主要是写的文字,不过应该还是能看懂吧,就是修改一些配置文件,后边我会附上我的配置文件,我打一个包,清单就是在各自文件夹,注意启动nginx的两个命令不能移动到nginx文件夹以外否则启动不了.
这就是同时运行的两个服务器,一个是80端口,一个是8080端口,同时登录到phpmyadmin的图片.不罗嗦了
上文件配置,我所使用的php,mysql,apache,nginx我会上传到115网盘,打成一个包,配置文件一个包,包括一个安装笔记,仅供参考高手路过吧!
上边还有个php源码包,这个暂不说,后边讲到c/C++扩展开发php插件再说,主要就是要php版本和源码一致否则出错,我会打包到一起,开发使用VC++6.0,网上有相关下载的,不在讨论之列,
最后说一下mysql还是用msi,zip太大了,方法都一样.