本人使用的是Apache+PHP+Mysql+phpMyAdmin黄金组合,因此以下就说一下学习php以来积累的一些服务器配置方面的应验:(本文以Apache+PHP+Mysql都安装在D盘为例) 一.Apache: 安装好你的Apache服务器以后,Apache已能正常工作,但是还不能处理PHP程序,需进一步配置Apache使能处理PHP程序。在Apache安装目录里找到文件httpd.conf,本实验中文件的全路径为d:/Apache/conf/httpd.conf,并用记事本打开httpd.conf,加上如下几句: scriptalias /php4/ "D:/php/" addtype application/x-httpd-php .php .php3 action application/x-httpd-php /php4/php.exe 注意各语句中的空格不能少,输入完之后保存文件。 要使上步中的配置生效,需要重新启动Apache,重启有多种方法,最简便的方法就是从开始菜单,如图13,也可以从运行栏里先运行命令net stop apache停止apache,再运行命令net start apache启动apache。如果启动不了,说明上步配置中有错误。 另外,介绍一个本机Apache服务器认证机制 1.首先在你的需要认证 机制的目录下边放一个名称为 .htaccess的文件,一般只有后缀的文件是不能建立的,您可以用一个非常优秀的程序编辑器Edit plus建立,假如你的apache安装在D:盘里,并且你的apache服务器 路径为: D:/Apache/htdocs,那么这个.htaccess的文件里的 内容就为 : AuthUserFile "D:/Apache/bin/pass.txt" AuthName AnyName AuthType basic Require valid-user 2.然后,把它放到 任何一个D:/Apache/htdocs的一个 目录下边 ,然后在“开始”——“运行”里打入“cmd”, 然后在 C:/>d: D:/>cd Apache D:/Apache>cd bin D:/Apache/bin>htpasswd.exe 会出现 下列信息: Usage: htpasswd [-cmdps] passwordfile username htpasswd -b[cmdps] passwordfile username password htpasswd -n[mdps] username htpasswd -nb[mdps] username password -c Create a new file. -n Don't update file; display results on stdout. -m Force MD5 encryption of the password (default). -d Force CRYPT encryption of the password. -p Do not encrypt the password (plaintext). -s Force SHA encryption of the password. -b Use the password from the command line rather than prompting for it. On Windows, TPF and NetWare systems the '-m' flag is used by default. On all other systems, the '-p' flag will probably not work. 3.然后是 : D:/Apache/bin>htpasswd -m pass.txt chai New password: ****** Re-type new password: ****** Adding password for user chai 4.然后在D:/Apache/conf目 录下边找到httpd.conf这个文 件在这个文件里找到这样一个关键字“ AllowOverride”看后边的一个 单词是不是All,如果 是不是,就更改为All,然后重新启 动Apache服务器就可以了。然后你就可以在 你的浏览器 里打入你的服务器目录了 ,这样你的认证机制就实现了。 如果是想在自己 在 http上服务器的 数据库空间上,如果有一个数据库管理工具phpMyAdmin,则可以通过修改 phpMyAdmin下边的config.inc.php文件实现,具体的方法是: 在这个文件里找 到 $cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)? 然后把它修改为 : $cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method (config, http or cookie based)? 这样你的数据库 就可以实现身份验证了。 二.PHP 一般情况下,php很好配置,就是在你的D:/php/php.ini文件有些需要注意的地方: 1.如果你的Mysql数据库没有问题,以前mysql中的很多数据都存在,但是不知道为什么就无法查询出来,并且无论如何也无法提交信息(在确保你的程序无误的情况下),你可以检查你的php.ini文件中的“register_globals =”看等号后边是什么?如果是Off,把它修改成On,默认register_globals是off,在这种情况下post模式不能用!只能用get模式提交表单!要把它改为on. 2.就是在一般的php版本中的 session默认的也是关闭的,所以呢就 应该在你安装的盘 中指定一个文件夹,命名为phpsession ,假如是在D盘,那么在你的 php.ini文件中就应该把第二个 session.save_path 设置为: session.save_path=D:/phpsession/ 这样你的session就打开了。 三.Mysql 1. 在你的mysql服务器配置好以后,你可以进入到D;/mysql/bin下,找到一个名为winmysqladmin.exe的东西,然后双击它,就会弹出一个让你设置mysql 数据库用户名和密码的对话框,默认的用户名是root,密码默认为空,可以在这里修改,然后你可以安装你的phpMyAdmin这个优秀的数据库管理软件,应该把phpMyAdmin放在你的根目录,即D:/Apahce/htdocs/下边,最好新建一个名称为phpmyadmin的文件夹,然后安装到phpmyadmin下边就可以了,不过这样你的phpmyadmin软件将出现,无效的用户名或密码。这时,你可以进入这个phpmyadmin目录下,找到你一个名为config.inc.php的文件,打开该文件~分别找到: $cfg['Servers'][$i]['user'] = 'root'; //此处为数据库用户名 $cfg['Servers'][$i]['password'] = ''; //此处为数据库密码 (找到第一处,修改即可~!) 都要更改成你设置的用户名和密码,保存即可~! 2.但是有时候,比较高的mysql版本,会出现一些问题,那就是当你的phpmyadmin软件的用户名和密码与你的mysql数据库的用户名和密码一样时候,竟然也不能访问你的mysql数据库,这样你可以把你的config.inc.php文件里的按照原来的设置不变,即: $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = ''; 然后重新启动你的mysql数据库服务器,然后你就可以在你的IE浏览器的地址栏里输入http://127.0.0.1/phpmyadmin/index.php进入数据库了,然后找到mysql这个数据库,找里边的user表,然后点击中间靠上的“浏览”,找到"Host"为"local",“User”为“root”的一个,然后点击“编辑”,然后把“password”的“函数”选项设置为“PASSWORD”,然后的“值”项填写入你的mysql数据库密码,这样在重新启动你的mysql数据库服务器,这样你的的phpMyAdmin软件又恢复正常了。 3.另外,如果你的电脑重新安装系统,你就需要备份D:/Apache/htdocs下的所有东西和D:/mysql/data/下的所有东西,但是如果你重新安装系统之后,又重新配置了你的php服务器,并把以前的文件放进了对应的目录里边,数据库中的信息仍然存在,但是当你提交信息的时候老是出现错误,并且你显示“Table "test" is read only”,这样说明的你备份过来的数据库的文件是“只读”,需要进入到你的D:/mysql/data下找到你以前备份的数据库的文件夹点击右键的“属性”,看“属性”--“只读”前边的方框被选中没有如果是被被选中了,把它去掉,然后在进入这个文件夹下边把这个文件夹下的所有文件都的“属性”的“只读”一项去掉,只保留“存档”属性。然后重新启动你的apache和mysql服务器就可以了。 4.有时候你会发现你的mysql突然亮的不是绿灯了,而是红灯,在这种情况下,你可以把C:/winnt/下的my.ini删除,然后重新启动你的mysql服务器,然后进入到你的D:/mysql/bin/下找到winmysqladmin.exe,然后双击它,来重新设置mysql数据库用户名和密码。 5.如果是想在自己在http服务器上的数据库空间上,如果有一个数据库管理工具phpMyAdmin,则可以通过修改 phpMyAdmin下边的config.inc.php文件实现,具体的方法是: 在这个文件里找 到 $cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)? 然后把它修改为 : $cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method (config, http or cookie based)? 这样你的数据库 就可以实现身份验证了。 6.数据库操作:从student表中查询所有记录并将查询结果输出到文件"result.txt"中,的操作语句是: select * into outfile "result.txt" from student; 7. 有时候sql语句不起作用,对数据库操作失败 最简便的 调试方法,echo那句sql,看看变量的值能得到不。 8. mysql查询语句包含有关键字 php查询mysql的时候,有时候mysql 表名或者列名会 有关键字这时候查询会有错误。例如表名是 order,查询时候会出错简 单的办 法是sql语句里表名或者列名加上`[tab键上面]来加以区别例如 select * from `order` 。 | |||||
学习php以来积累的一些“经验”
最新推荐文章于 2024-07-05 14:44:56 发布