构建windows平台bugfree3.0.3的体验如何?针对这个问题,本文详细介绍了相应的分析和解决方法,希望能帮助更多想要解决这个问题的小伙伴找到更简单易行的方法。
我之前没有做过windows server管理,我的理解还停留在对个人用户操作系统的理解上。这一次构建无bug环境相当麻烦。
在安装之前,我在百度的大部分无错构造都是使用xampp集成环境安装方式,然后我是这样做的:
下载xampp,然后安装在系统c盘下,基本上是装傻子,然后打开控制面板,安装apache和mysql(php包含在apache中)。因为这个系统中已经运行了mysql服务和apache服务,不知道是谁在使用这个服务,所以这里我把apache的端口改成了81。mysql端口是3308,在php.ini和phpMyAdmin配置中,安装路径和mysql端口号都做了改动,中间总是有点乱。整体原因是配置没变,就不赘述了。
然后根据在线教程之类的,下载bugfree到hotdocs,启动服务,发现bugfree检测不到mysql?搞什么鬼?我已经有了~ ~
我开始找问题,以为是配置文件。也许没有修改端口。我找到了很多配置文件,把3306全部改成了3308,但是启动phpMyAdmin还是可以的。我用phpinfo手动创建了一个index.php和一个连接mysql的测试函数,发现了问题。这个php连接数据库无法连接~,不知道为什么。然后我查了一下phpinfo,发现php里面没有mysql模块。只有mysqli和mysqlndt。xampp自动集成最初的php版本是7.3中的最新版本,但是php已经削弱了mysql模块,默认情况下会被注释掉。7.3之前,分机图书馆没有mysql.dll。但是bugfree3.0.3采用的mysql检测方法需要这个扩展。我试着用MyQLI和pdo的方法,但是Bugree根本检测不到,所以我意识到集成环境真的很尴尬,不自由,而且我无法控制软件版本,所以我改变了我的套路!
我决定手动安装软件,并使用nginx php5.6 mysql来构建环境。我就不细说了。nginx配置:我在本地修改了监听端口,添加了index.php的默认注释删除location php,修改了页面文件的根路径:
client _ max _ body _ size 10M
#这是打开后期上传文件的大小限制。默认情况下,它不会设置为1M或2M。我都忘了.反正也不大。
服务器{
列表81;
server _ namelocalhost
# charsetkoi 8-r;
# access _ log logs/host . access . log main;
位置/
root c :/program/ngin x 1.10/html;
indexindex.phpindex.htmlindex.htm;
}
.此处省略。
位置~\。PHP $ { 0
根nbsp
; html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME C:/program/nginx1.10/html$fastcgi_script_name;
include fastcgi_params;
}
php安装,就是解压过程,php.ini需要打开mysql扩展php_mysql.dll,其他的因为后期要导入数据库,所以修改了上传文件的大小限制upload_file_xxxx 和post_max_size俩参数的值;
mysql安装采用了默认端口3306,也基本是傻瓜式安装,配置个密码就完事儿了;
3306服务运行正常;
下载RunHiddenConsole.exe,就是后台运行的一个控制台,复制两份,分别放在nginx和php的目录下
创建文件start.bat和shutdown.bat放在nginx目录下,start内容为:
@echo off echo start_nginx.bat echo Starting PHP FastCGI... cd C:/program/php5.6 RunHiddenConsole php-cgi.exe -b 127.0.0.1:9000 -c php.ini echo Starting nginx... cd C:/program/nginx1.10 RunHiddenConsole nginx.exe Exit
------------------------------华丽的分割线---------------------------
shutdown内容为:
@echo off echo stop_nginx.bat echo Stopping nginx... taskkill /F /IM nginx.exe > nul echo Stopping PHP FastCGI... taskkill /F /IM php-cgi.exe > nul exit
注:tasklist是类似linux ps的命令,taskkill就是kill进程的命令,这里各位需要修改的就是nginx和php的路径,千万别忘了这个
RunHiddenConsole.exe
一定要放在nginx和php的目录里~~否则启动不了哦~ 现在就测试一下php和mysql的连接吧 在nginx里~,index.php内容: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>test mysql+php+nginx</title> </head> <body> <?php $link = mysql_connect("localhost","root","123456"); if($link){ echo "success!"; }else{ echo "fail!"; } ?> <br> <?php phpinfo(); ?> </body> </html>
我这里测试没问题 success!有问题的同学再检查一下php和mysql的连接 看一下phpinfo是否有mysql和配置的是否有问题,之后 解压phpMyAdmin放到web的root下,这是用来管理数据库的,我自己下载的默认就是认证模式的,不是的将配置文件config.inc.php的配置修改一下,将authxxxx 改成cookie模式,用户名密码是mysql的用户和密码
接下来下载bugfree,将bugfree解压到页面文件根目录下,创建一个文件夹BugFile在同级目录下,然后配置合适的权限,注意,windows平台使用nginx的web和bugfree的时候 一定要修改bugfree的一个配置 ,否则路径是类似这样的C:\program\nginx\html/bugfree/xxxx/xxx 斜杠是俩方向,特别坑,我也是弄了半天不会,请教人家php开发的才知道的,原因还是不懂,但是会修改,将/protected/config/main.php代码中的这部分注释掉:(/* xxx */多行注释)
'urlManager' => array ( 'urlFormat' => 'path', 'showScriptName' => false, 'rules' => array ( '<type:\\w+>/<id:\\d+>/<action:\\w+>' => 'info/edit', '<type:\\w+>/list/<product_id:\\d+>' => 'info/index', '<type:\\w+>/<id:\\d+>' => 'info/edit', '<controller:\\w+>/view/<id:\\d+>' => '<controller>/view', '<controller:\\w+>/<id:\\d+>' => '<controller>/view', '<controller:\\w+>/<action:\\w+>/<id:\\d+>' => '<controller>/<action>', '<controller:\\w+>/<action:\\w+>' => '<controller>/<action>', ), ),
然后就可以访问啦~,如果出现了访问bugfree的index.php跳转index.php/site/login 404的情况,就这么解决~!
导入数据库的时候有坑的,如果bugfree的导出数据库是zip等压缩格式,当导入不进去的时候 尝试解压掉这个文件 ,然后用mysql的客户端 source进去 (大小受限制的时候 ,修改nginx的配置 见上方,php的两个参数配置,见上方 就ok了),否则总是失败。
关于windows平台bugfree3.0.3搭建心得是什么问题的解答就分享到这里了,希望
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/48250.html