WAMP 环境常见问题

WAMP 环境中出现过的一些错误及其解决,放在这里。

Apache

1、 Apache 服务不能启动?虚拟主机配置时也会报错?( Windows 8.1_x64 )

解决方案

① httpd.conf 中更改 Apache 监听的端口:Listen 80 -> Listen 8080

② 我是因为虚拟主机中设置与 httpd.conf 中设置相冲突。

·其他:netstat 命令的使用之查看 某个端口被谁占用

输入命令:netstat -ano,列出所有端口的情况。在列表中我们观察被占用的端口,比如是 49157,首先找到它。

查看被占用端口对应的 PID,输入命令:

netstat -ano|findstr "49157"

回车,记下最后一位数字,即 PID, 这里是 2720。

继续输入 tasklist|findstr "2720" ,回车,查看是哪个进程或者程序占用了 2720 端口,结果是:svchost.exe。

结束该进程:在任务管理器中选中该进程点击 “结束进程” 按钮,或者是在 cmd 的命令窗口中输入:

taskkill /f /t /im svchost.exe

2、 Apache 服务器下的网站加载巨慢?

回答:一般都是 PHP 程序写得有问题。

3、如何改变 Apache 的默认监听端口号?

解决办法

在 httpd.conf 中通过修改 80 即可:

#Listen 12.34.56.78:80
Listen 80

4、 Apache 只能监听一个端口吗?

回答:一个 Apache 服务器上可以监听多个端口,即可以设置多个 Listen port。但是 一个端口只能被一个程序监听

5. You don’t have permission to access /Discuz/ on this server.?

解决办法:将 DocumentRoot “” 前的注释符号 # 删除。

原因

① index.html 是用 root 用户建的文件,Apache 权限不够。

解决方法:更改文件权限;chmod 755 index.html

如果是 WIN 下出现这个问题,请按以下方式解决:

打开 Apache 2.2 的配置文件 httpd.conf,找到这么一段:

<Directory />
     Options FollowSymLinks
     AllowOverride None
     Order deny,allow
     deny from all
     Satisfy all
</Directory>

然后试着把 deny from all 中的 deny 改成了 allow ,保存后重启 Apache ,然后再一测试网页,访问网站完全正常。

② Apache 的配置文件 httpd-vhosts.conf 里,如果打开了虚拟主机的扩展配置,即:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

Include 前面的 # 去掉了,就引入了扩展配置,而扩展配置文件里又没配好相应的权限 Allow from all,所以提示此错误。

之所以出现这个错误的原因是: ** Apache 2.4 与 Apache 2.2 的虚拟主机配置写法不同** 导致。

Apache 2.2 的写法:

<VirtualHost *:80>  
 ServerName fdipzone.demo.com  
 DocumentRoot "/home/fdipzone/sites/www"  
 DirectoryIndex index.html index.php  
  
 <Directory "/home/fdipzone/sites/www">  
  Options -Indexes +FollowSymlinks  
  AllowOverride All  
  Order deny,allow  
  Allow from all  
 </Directory>  
  
</VirtualHost>  

如果在 2.4 中使用以上写法就会有 Apache AH01630: client denied by server configuration 错误。

解决方法

Apache 2.4 中找到:

Order deny,allow  
Allow from all  
Allow from host ip  

修改为:

Require all granted  
Require host ip  

修改后的配置如下:

<VirtualHost *:80>  
 ServerName fdipzone.demo.com  
 DocumentRoot "/home/fdipzone/sites/www"  
 DirectoryIndex index.html index.php  
  
 <Directory "/home/fdipzone/sites/www">  
  Options -Indexes +FollowSymlinks  
  AllowOverride All  
  Require all granted  
 </Directory>  
  
</VirtualHost>  

6、Apache 配置虚拟主机后原域名 localhost 无权访问?

Apache 默认只有一个虚拟主机,即 httpd.conf 中实现配置好的和域名 localhost 绑定的 htdocs 路径。

当配置了其他的虚拟主机后,原有虚拟主机的 DocumentRoot 及其配置将被覆盖。

解决办法

在 httpd-vhosts.conf 中按虚拟主机的配置方法加入把 htdocs 目录的重新与 localhost 域名绑定即可即可。

MySQL

MySQL 无法远程访问?

检查思路:

  • MySQL 服务器地址有无写错,不要带端口号。

  • /etc/mysql/my.cnf 中注释掉 bind_addressskip_networking

  • 防火墙

详见:LEMPA 环境搭建

MySQL 忘记密码重置

进入 MySQL 安全模式,即当 MySQL 起来后,不用输入密码就能进入数据库。  命令为:

mysqld-nt --skip-grant-tables 

使用空密码登录后:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your_password'); 

或者:

use mysql
update mysql.user set password=PASSWORD('your_password') where user='root'; 
flush privileges; 

如果出现错误请检查环境变量或者是否 MySQL 服务未关闭。

如果知道原来密码的情况下可以直接修改:

mysqladmin -uroot -p oldpwd password

然后输入新密码就可以了。

  • 1、开机出现 “缺少根元素” 的错误提示?

解决办法

Win8/Win10 系统下,删除这个目录:C:/Users/~~~/AppData/Roaming/Oracle/MySQL Notifier/ 下的配置文件即可。

~~~ 是本地计算机名。其他系统应该也是大同小异,按照相应路经寻找相关文件删除就好了。

参考

本文最后修改时间: 2015年10月24日 19:38:01 (完) CC BY-NC-ND 3.0

若您发现文章中的错误,并愿告知于我,或想与我交流,我的联系方式在: Contacts


上一篇 网页上直接打电话、发 QQ 消息、打开微信的链接

All The Best

下一篇 精彩导航条大集合