正 文:
今天调试PHP数据库Mysql,在单位的电脑上安装phpMyAdmin数据库管理软件,本来是很简单的事,却出现了几个问题:
1/无法载入mcrypt扩展,请检查PHP配置;
2/配置文件现在需要绝密的短语密码(blowfish_secret);
3/#2003-服务器没有响应。
为了以备不时之需,把遇到的这些问题的解决方法归纳到飘易博客,省得日后再遇到这类问题还要到处阅读文档,寻找解决方法。
由于目前phpMyAdmin的最新版本已经更新到了2.11.5.1,网上流传的很多配置方法都是以前老版本的,已经不太适应新版本的配置要求;于是flymorn顺便也把phpMyAdmin2.11.5.1的配置步骤也列在下面;为了切换及调试PHP方便,我采用的是windows系统,本地调试。
1、先下载phpMyAdmin安装包:
到国外官方网站 上,点击导航栏上的“DOWNLOADS”链接进入下载页面,选择“all-languages.zip”版本下载到本地,解压;把解压缩文件放到系统指定的虚拟根目录下的phpmyadmin文件夹里(可自定义文件夹名),如flymorn的本地存放位置是D:\www\phpmyadmin里。
2、找到phpmyadmin文件夹里的/libraries/config.default.php文件(旧版本是根目录下的config.inc.php文件),用支持UTF-8编码的写字板打开进行编辑。
3、查找 $cfg['PmaAbsoluteUri']
修改为你将上传到空间的phpMyAdmin的网址
如:$cfg['PmaAbsoluteUri'] = 'http://www.piaoyi.org/phpmyadmin/';
这里因为我是本地调试,我改为$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/';
注意:不要漏掉最后的反斜杠/和开头的http。
4、查找 $cfg['Servers'][$i]['host'] = 'localhost';(通常用默认,也有例外,可以不用修改)
5、查找 $cfg['Servers'][$i]['auth_type'] = 'config';
在自己的机子里调试用config;如果在网络上的空间用cookie,这里我们既然在前面已经添加了网址,就修改成cookie。
我个人建议:无论是本地还是网络上,都建议设置成cookie,安全第一。
同时,当auth_type这个值设置为cookie后,还有一个地方需要作出相应的修改:
$cfg['blowfish_secret'] = '';
改成:$cfg['blowfish_secret'] = 'www.piaoyi.org';
这里的www.piaoyi.org自己随便定义,不超过46个字符。如果这个地方留空,将会出现上文提到的第2个错误:“配置文件现在需要绝密的短语密码(blowfish_secret)”。
6、查找 $cfg['Servers'][$i]['user'] = 'root'; // MySQL user(用户名,自己机里用root;在网上一般为你的ftp用户名,虚拟主机提供商会告诉你的;一般不要修改)
7、查找 $cfg['Servers'][$i]['password'] = '123456'; // MySQL password (123456修改成连接你的MYSQL数据库的用户密码)
8、查找 $cfg['DefaultLang'] = 'zh'; (这里是选择语言,zh代表简体中文的意思) 还有 $cfg['DefaultCharset'] = 'gb2312';(修改默认编码为国标)
到这里,phpMyAdmin就已经配置完成OK;你可以打开http://localhost/phpmyadmin/访问方便快捷的图形化管理软件phpMyAdmin了。关于本文没有提到的配置文件里的其他选项,大家可以不用关心了也不必修改。关于具体如何操作phpMyAdmin不在本文讨论的范围内,不过图形化界面,是通俗易懂,稍微看看就会用了(参考)。
下面谈谈,flymorn在安装配置phpMyAdmin的过程中所遇到的几个问题。
第一个问题:“无法载入mcrypt扩展,请检查PHP配置”。
1、没有正确安装Mysql数据库,在系统服务中Mysql相关的服务没有启动。
2、在系统的 system32(C:\windows\system32) 目录下缺少 libmcrypt.dll文件,解决方法是找到php目录下的libmcrypt.dll,并将libmcrypt.dll复制到C:\windows\system32目录中,然后重新启动Web服务。
3、在PHP目录下的php.ini文件中,没有将“;extension=php_mcrypt.dll”中的前面一个“;”去掉,所以不能使用相应功能,解决方法是打开php.ini文件,找到;extension=php_mcrypt.dll改成extension=php_mcrypt.dll //去掉前面的;使之生效
4、Mysql目录没有读取权限,正确的目录权限如下:
administrator 完全控制
system 完全控制
user 读取加运行
其他的用户权限全部删除(也可保留,但安全性不高,建议删除),然后重启MYsql服务和Web服务(建议修改此项后重启一下服务器)。
5、以上方法都不行的话,再用这个方法:桌面>我的电脑>右键属性>高级>环境变量>系统变量>新建
名:phpdir
值:C:\php(你的PHP在什么目录就是什么)
(参考来源:地址)
第二个问题:“无法载入 mysql 扩展,请检查 PHP 配置”
把 PHP 目录下的 libmySQL.dll 复制到:c:\windows\system32 下,然后重启APACHE。
第三个问题:“配置文件现在需要绝密的短语密码(blowfish_secret)”
确保在config.default.php文件里面进行了正确的设置 :
$cfg['Servers'][$i]['auth_type']= 'cookie';
同时
$cfg['blowfish_secret'] = 'www.piaoyi.org'; //(这个值随便写,就是不能留空)
其实这个问题,我碰到了确实很郁闷,如果按照我在上面提到的配置方法做了,应该不会提示这个错误。经过我2个多小时不停的修改config.default.php配置文件,始终提示这个错误,几乎达到了崩溃的边缘了。
然后就是灵光一现,突然发现:我把auth_type认证方式改为http,改为config时,打开页面始终出现这个错误,也就是说改变了认证模式,并没有对phpmyadmin起作用,难道是其他的配置文件在影响决定着phpmyadmin?
立马来到phpmyadmin根目录,赫然发现根目录下有一个config.sample.inc.php文件存在的同时,还有一个文件config.inc.php也存在!!而这个是以前老版本的配置文件,原来是这个文件捣的鬼。马上删除config.inc.php,再进入调试页面,错误消失了!问题解决。
看来phpmyadmin根目录下的config.inc.php配置文件的优先级比/libraries/config.default.php的配置文件高,系统是先调用根目录里的配置文件,然后才是libraries文件夹里的配置文件,艾,这个问题,折腾了这么久,呜呼哀哉。总归解决了,舒一口气啊。
第四个问题:“#2003-服务器没有响应”。
遇到这个问题多半是MYSQL数据库没有启动,建议直接在在:控制面板-管理工具-服务里面把MYSQL启动。关于是否启动,你可以在任务管理器里查看是否有“mysqld-nt.exe”这样的进程,如有有,则说明mysql已经启动。
第五个问题:“没有发现PHP的扩展设置mbstring”。
修改 C:\WINDOWS\ 下的 PHP.INI 文件,找到 ;extension=php_mbstring.dll 把;去掉,保存 PHP.INI,重新启动Apache即可。
这些问题,不碰到便罢了。但是对于新手来说,第一次碰到的话,自己查找解决方案的话一般都是到处查找,网上一大堆的方法都不适用的情况下,自己会感觉到多么的无奈了。我还是建议,遇到问题不要着急,仔细阅读文档,多参考下前辈们的解决方法,虽然不一定适用,但对你会有一定的启发。多动手,多试验,没有任何问题可以难倒你。
作者:pureboy

PHP est principalement la programmation procédurale, mais prend également en charge la programmation orientée objet (POO); Python prend en charge une variété de paradigmes, y compris la POO, la programmation fonctionnelle et procédurale. PHP convient au développement Web, et Python convient à une variété d'applications telles que l'analyse des données et l'apprentissage automatique.

PHP est originaire en 1994 et a été développé par Rasmuslerdorf. Il a été utilisé à l'origine pour suivre les visiteurs du site Web et a progressivement évolué en un langage de script côté serveur et a été largement utilisé dans le développement Web. Python a été développé par Guidovan Rossum à la fin des années 1980 et a été publié pour la première fois en 1991. Il met l'accent sur la lisibilité et la simplicité du code, et convient à l'informatique scientifique, à l'analyse des données et à d'autres domaines.

PHP convient au développement Web et au prototypage rapide, et Python convient à la science des données et à l'apprentissage automatique. 1.Php est utilisé pour le développement Web dynamique, avec une syntaxe simple et adapté pour un développement rapide. 2. Python a une syntaxe concise, convient à plusieurs champs et a un écosystème de bibliothèque solide.

PHP reste important dans le processus de modernisation car il prend en charge un grand nombre de sites Web et d'applications et d'adapter les besoins de développement via des cadres. 1.Php7 améliore les performances et introduit de nouvelles fonctionnalités. 2. Des cadres modernes tels que Laravel, Symfony et Codeigniter simplifient le développement et améliorent la qualité du code. 3. L'optimisation des performances et les meilleures pratiques améliorent encore l'efficacité de l'application.

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

Le type PHP invite à améliorer la qualité et la lisibilité du code. 1) Conseils de type scalaire: Depuis PHP7.0, les types de données de base sont autorisés à être spécifiés dans les paramètres de fonction, tels que INT, Float, etc. 2) Invite de type de retour: Assurez la cohérence du type de valeur de retour de fonction. 3) Invite de type d'union: Depuis PHP8.0, plusieurs types peuvent être spécifiés dans les paramètres de fonction ou les valeurs de retour. 4) Invite de type nullable: permet d'inclure des valeurs nulles et de gérer les fonctions qui peuvent renvoyer les valeurs nulles.

Dans PHP, utilisez le mot-clé Clone pour créer une copie de l'objet et personnalisez le comportement de clonage via la méthode de magie du clone \ _ \ _. 1. Utilisez le mot-clé Clone pour faire une copie peu profonde, en clonant les propriétés de l'objet mais pas aux propriétés de l'objet. 2. La méthode du clone \ _ \ _ peut copier profondément les objets imbriqués pour éviter les problèmes de copie superficiels. 3. Faites attention pour éviter les références circulaires et les problèmes de performance dans le clonage et optimiser les opérations de clonage pour améliorer l'efficacité.

PHP convient aux systèmes de développement Web et de gestion de contenu, et Python convient aux scripts de science des données, d'apprentissage automatique et d'automatisation. 1.Php fonctionne bien dans la création de sites Web et d'applications rapides et évolutifs et est couramment utilisé dans CMS tel que WordPress. 2. Python a permis de manière remarquable dans les domaines de la science des données et de l'apprentissage automatique, avec des bibliothèques riches telles que Numpy et Tensorflow.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft

MantisBT
Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.