你不难过,是因为我替你难过了。真残忍,不是么?
服务器数据库相关问题
Apache服务器的目录:
一般来说Apache服务器目录默认存放文件地址是/var/www,但是在Debian中你要把文件放在/var/www/html文件夹下才能执行….
登陆MYSQL需要授权:
即每次登陆mysql的时候,必须要使用sudo来启动,Debian下连接数据库必须要使用sudo,我本地写了一个PHP[连接数据库并返回数据]文件,在浏览器打开的时候显示没有权限连接到数据库,给了这个文件的所有权限还是没办法连接,一开始以为是权限问题,就把MYSQL的目录加上了权限(chmod -R 777 mysql),结果还是不行,后来才知道是因为数据库授权的问题,解决方法如下:
编辑 /etc/mysql/my.cnf 增加 [ mysqld ] skip-grant-tables #忽略密码授权 重启mysql
本地PHP无法连接MYSQL:
关于这个问题有很多种可能性,其中有一种容易被人忽略的可能性就是PHP中连接本地数据库地址填写的localhost,当主机填写为localhost时mysql会采用 unix domain socket连接
当主机填写为127.0.0.1时mysql会采用tcp方式连接
这是linux套接字网络的特性,win平台不会有这个问题写了PHP连接MYSQL但是没办法返回数据:
事情是这样的,我写了一个普通的PHP文件,连接数据库返回数据,但是浏览器打开什么内容都没有,甚至mysql_connect()这个函数都没有执行,一开始以为是没有安装PHP的依赖包,后来发现我错了….Debian中默认安装的PHP7,PHP7中没有mysql_connect()这个用法了…以后要用到sqli-labs,还有一些上传测试的代码都是基于PHP5版本,所以卸载PHP7然后安装PHP5即可,卸载安装在前面的笔记中有提起,这里不作复述。
双系统启动项
装完双系统后,Debian的Grup在开机的时候会让你选择启动项。但是WIN下的Easybcd也可以创建启动方式引导,这个时候就重复了,解决这个问题的方法是把Grup的第一启动项改成win
sudo update-grub,然后sudo gedit /boot/grub/grub.cfg 将含有Windows的系统菜单,粘贴在linux启动项之前。
或者在grub.cfg中的default=0,修改成default=4,不一定是是4,那要看sudo update-grub中windows排在第几,第一个是0,第二个是1,依次排序。