Windows下Apache设置PHP.INI路劲

Windows下的PHP.INI路劲默认为c:\windows或者是c:\winnt下,在php.ini-production、php.ini-development中大致18行; Windows directory (C:\windows or C:\winnt),用phpinfo查看为:c:\windows

Configuration File (php.ini) Path
Configuration File (php.ini) Path

可以设置到其他位置,例如PHP安装目录,方法如下: 继续阅读Windows下Apache设置PHP.INI路劲

CentOS下通过ftp命令将文件传输到另一台FTP服务器

有两台服务器,一台是CentOS有权限,定义为A服务器;另一台是虚拟主机只有FTP,定义为B服务器,现在要将A中的文件FTP到B,有两种方案:

方案一 下载到本地 传到B

A服务器有权限,SSH上去后使用tar czf 打包好要传的文件,再下载到本地,最后从本地通过FTP传到B服务器,这种传输显然简单又容易想到,但是速度可想而知,传了两次,慢。 继续阅读CentOS下通过ftp命令将文件传输到另一台FTP服务器

您尝试导入的文件是不支持的压缩格式(application/zip)

您尝试导入的文件是不支持的压缩格式(application/zip)。可能服务器不支持或您在设置中禁止了这种格式。这是由于php在编译过程中未将ZIP功能编译进去。之前我一直未去处理,因为用不到。后来有位朋友使用phpMyAdmin上传SQL的ZIP格式时候需要解压,出现了上述错误。 继续阅读您尝试导入的文件是不支持的压缩格式(application/zip)

(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80

service httpd start
Starting httpd: (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs

这是启动apache发生的错误,是监听80端口的问题,解决办法:

  1. 打开httpd.conf
  2. 找到:

    # Change this to Listen on specific IP addresses as shown below to # prevent Apache from glomming onto all bound IP addresses (0.0.0.0)

  3. 下面的Listen这一行修改为:

    Listen 127.0.0.1:80

Warning: Unit file of mysql.service changed on disk, ‘systemctl daemon-reload’ recommended.

CentOS下重启MariaDB的时候出现Warning: Unit file of mysql.service changed on disk, 'systemctl daemon-reload' recommended.错误,根据提示,我们可以先用systemctl daemon-reload
systemctl restart mysql

即可。其他服务出现类似的情况,也可以使用systemctl daemon-reload来解决。

Missing system table mysql.roles_mapping; please run mysql_upgrade to create it

Missing system table mysql.roles_mapping; please run mysql_upgrade to create it是我在MySQL换到MariaDB后出现的一个错误,由于各个网站的数据库编码、MyISAM和InnoDB不同,出现兼容性问题。 继续阅读Missing system table mysql.roles_mapping; please run mysql_upgrade to create it

免费HTTPS到来,新手淡定,老鸟绕道

最近讨论HTTPS对服务器如何如何的有压力,消耗资源,其实我想说:少开点电脑自启动的后台进程,节省下来的资源不晓得是HTTPS消耗的多少倍(我就是黑各种输入法、各种卫士)。其实HTTPS最大的好处是毫无疑问会加强网络安全,现在免费的HTTPS到来了:Let’s Encrypt继续阅读免费HTTPS到来,新手淡定,老鸟绕道

mysql_connect(): Headers and client library minor version mismatch. Headers:

mysql_connect(): Headers and client library minor version mismatch. Headers:这样的错误是由于高版本的MySQL,低版本的MySQL Client API引起的,我在CentOS 7上安装MySQL-Server的时候出现了这个错误,解决办法:

卸载php-mysql

安装php-mysqlnd

重启httpd

Fatal error: Maximum execution time of 30 seconds exceeded

今天在帮一个朋友安装防止WordPress头像不显示的插件(WP Gravatar Https)时,后台出现Fatal error: Maximum execution time of 30 seconds exceeded 错误。这个错误比较常见,看见网上很多在问,我记录下。 继续阅读Fatal error: Maximum execution time of 30 seconds exceeded

将Apache添加为Windows服务

新版本的Apache与MySQL一样,在Windows安装后都是需要用.exe去执行启动或停止,比较麻烦,如果加为Windows服务做管理就比较简单。将Apache添加为Windows服务与之前介绍的将MySQL添加为Windows服务一样,操作只需要几步即可完成。

WAMP安装在E:\WAMP\目录,下面Apache2.4在其下面,现在将Apache添加到Windows服务。我的系统是Windows 8,Win+X管理员模式运行CMD,才能安装。 继续阅读将Apache添加为Windows服务

Fatal error: Call to undefined function mb_detect_encoding()

Fatal error: Call to undefined function mb_detect_encoding() in C:\Program Files\Apache24\htdocs\120.27.38.1\phpMyAdmin-4.3.6-all-languages\libraries\php-gettext\gettext.inc on line 177

这个提示是由于PHP缺少mbstring扩展引起的,解决方法:

Windows下,extension_dir = "./"修改为ext路劲,如:extension_dir = "C:/Program Files/PHP/ext",网站很多教程说将extension_dir = "./"修改为extension_dir = "ext",其实不靠谱。Linux下我未验证是否靠谱,但是我建议,不管还是Linux还是Windows,都将extension_dir = "./"中的./换为绝对路劲即可。

Failed to issue method call: Unit mysql.service failed to load: No such file or directory.

Failed to issue method call: Unit mysql.service failed to load: No such file or directory.这个错误是由于CentOS 7已经将MySQL替换为MariaDB了,当你yum install mysql-server的时候会提示没有这个包,换用yum install mariadb mariadb -y安装完毕,使用命令 service mysql start 会出现错误:

Redirecting to /bin/systemctl restart mysql.service
Failed to issue method call: Unit mysql.service failed to load: No such file or directory.

CentOS 7需要使用systemctl命令,对于MariaDB用 systemctl start|stop|restart mariadb.service

Error: Cannot retrieve metalink for repository: epel. Please verify its path

CentOS安装epel源后,安装php-pecl-zendopcache出现Error: Cannot retrieve metalink for repository: epel. Please verify its path错误,这个错误大致原因与之前我提到的Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again原因差不多。 继续阅读Error: Cannot retrieve metalink for repository: epel. Please verify its path