在网上找了很多windows apache nginx php mysql 相关的配置,在这里做个笔记,以后用到的地方来看看。也不是很确定是不是正确的,到时候在百度吧。
网上配置服务器教程多如牛毛,但是写的明明白白或者有配图,等你自己去实践你会发现问题还是非常的多,笔者就以双服务器配置演示一次,抛弃我使用很久的集成环境,到写这篇笔记时候,已经完美可以运行项目了,在配置过程中,还是遇到很多问题我都一一列出来,希望你们可以在遇到相同错误有个好的解决方案,在配置之前对于以前安装的集成环境卸载,然后用软件清理完注册表垃圾,什么管家之类都可以,不说名字了.接着去下载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:/“ #网站目录 # 同上 DirectoryIndex index.php index.html # 添加index.php AddType application/x-httpd-php .php #添加php文件类型 现在就可以启动apache了,完美可以支持mysql,php用phpmyadmin测试即可. 没有截图,这个主要是写的文字,不过应该还是能看懂吧,就是修改一些配置文件,后边我会附上我的配置文件,我打一个包,清单就是在各自文件夹,注意启动nginx的两个命令不能移动到nginx文件夹以外否则启动不了. 这就是同时运行的两个服务器,一个是80端口,一个是8080端口,同时登录到phpmyadmin的图片. 记录就先到这里吧。以后在说了。