在 Win7 上使用 XAMPP 的 Apache、MySQL 和 FTP“检测到错误的路径”
Posted
技术标签:
【中文标题】在 Win7 上使用 XAMPP 的 Apache、MySQL 和 FTP“检测到错误的路径”【英文标题】:Apache, MySQL, and FTP 'Detected With Wrong Path' using XAMPP on Win7 【发布时间】:2012-08-15 03:35:56 【问题描述】:在我的 Win7 上尝试访问 XAMPP 时遇到以下问题。它们被配置为在加载操作系统时自动启动。以下消息是我看到的
上午 6:25:17 [apache] Apache 服务检测到错误的路径 6:25:17 AM [apache] 先手动卸载服务 上午 6:25:17 [mysql] MySQL 服务检测到错误的路径 6:25:17 AM [mysql] 先手动卸载服务 上午 6 点 25 分 17 秒 [filezilla] 检测到 FileZilla 服务路径错误 6:25:17 AM [filezilla] 先手动卸载服务
而Apache的错误日志如下:
[Sun Aug 19 06:24:16.719046 2012] [ssl:warn] [pid 1516:tid 384] AH01873:初始化:未配置会话缓存 [提示:SSLSessionCache] [Sun Aug 19 06:24:20.493262 2012] [mpm_winnt:notice] [pid 1516:tid 384] AH00455: Apache/2.4.2 (Win32) OpenSSL/1.0.1c php/5.4.4 已配置 -- 恢复正常操作 [2012 年 8 月 19 日星期日 06:24:20.494262] [mpm_winnt:notice] [pid 1516:tid 384] AH00456:服务器构建:2012 年 5 月 13 日 14:10:15 [Sun Aug 19 06:24:20.494262 2012] [core:notice] [pid 1516:tid 384] AH00094:命令行:'c:\xampp\apache\bin\httpd.exe -d C:/xampp/apache' [Sun Aug 19 06:24:20.496262 2012] [mpm_winnt:notice] [pid 1516:tid 384] AH00418:父:创建子进程 324 [Sun Aug 19 06:24:22.116354 2012] [ssl:warn] [pid 324:tid 288] AH01873:初始化:未配置会话缓存 [提示:SSLSessionCache] [2012 年 8 月 19 日星期日 06:24:22.174358] [mpm_winnt:notice] [pid 324:tid 288] AH00354:子级:启动 150 个工作线程。
还有 MySQL 错误日志
120819 6:24:18 [注意] 插件“FEDERATED”已禁用。 120819 6:24:19 InnoDB:InnoDB 内存堆已禁用 120819 6:24:19 InnoDB:互斥锁和 rw_locks 使用 Windows 互锁函数 120819 6:24:19 InnoDB:压缩表使用 zlib 1.2.3 120819 6:24:19 InnoDB:初始化缓冲池,大小 = 16.0M 120819 6:24:19 InnoDB:缓冲池初始化完成 120819 6:24:19 InnoDB:支持的最高文件格式是梭子鱼。 120819 6:24:21 InnoDB:等待后台线程启动 120819 6:24:22 InnoDB:1.1.8 已启动;日志序列号 4011253 120819 6:24:22 [注意] 服务器主机名(绑定地址):'0.0.0.0';端口:3306 120819 6:24:22 [注意] - '0.0.0.0' 解析为 '0.0.0.0'; 120819 6:24:22 [注意] 在 IP: '0.0.0.0' 上创建的服务器套接字。 120819 6:24:27 [注意] 事件调度程序:已加载 0 个事件 120819 6:24:27 [注意] c:\xampp\mysql\bin\mysqld.exe:准备连接。 版本:“5.5.25a”套接字:“”端口:3306 MySQL 社区服务器 (GPL)
顺便说一句,编辑在这里有点困难,必须在每一行都进行
【问题讨论】:
【参考方案1】:该错误消息表明您安装了 MySQL Windows 服务,该服务不属于您正在使用的当前 XAMPP(它通过名称检测服务然后验证服务路径)。您表示您卸载了以前的外部 MySQL 安装。如果这是您在系统上知道的唯一其他安装,则它可能在卸载时没有自动从 Windows 服务中删除该服务。
如果是这种情况,您可以执行以下操作:
-
打开命令提示符(开始 > 运行 > cmd)以管理员身份运行
键入以下内容:
Code: Select all
sc delete mysql
然后按回车键。 (注意:这需要管理员权限。)
如果第二步成功完成,您应该能够重新打开控制面板并查看其内容。如果一切顺利,您可以点击 MySQL 旁边的控制面板中的红色“X”,为 XAMPP MySQL 安装 MySQL Window Service。
【讨论】:
Markdown 中编号列表中的代码格式很棘手。我在这里调整了它。请查看并在必要时进行编辑。【参考方案2】:只需取消选中并选中模块服务列中的按钮。它将自动删除旧服务并使用新路径启动新服务。当您在不停止服务的情况下直接删除 xampp 文件夹时会发生这种情况。
【讨论】:
【参考方案3】:此答案旨在补充来自 Sarang 的答案。我只是想澄清一下,因为这对我来说并不明显,可以同时运行一个现有的 MySQL 安装和一个与 XAMPP 相关的安装。以下是与 Sarang 的回答相同的方法,但希望提供更多有用指导的详细信息:
-
以管理员身份运行 XAMPP 控制面板
点击MySQL/Config,将两处端口改为3307
停止现有安装的 MySQL 服务
以管理员身份运行 cmd.exe。键入“C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqladmin”-u root -p 关闭。这将停止对现有 MySQL 安装的服务
返回 XAMPP 控制面板,单击 MySQL 旁边的绿色复选标记:这将删除现有 MySQL 安装的服务
点击XAMPP控制面板/配置,如下配置
-
点击服务和端口设置,将 MySQL 的端口更改为 3307(我不确定这是否真的有必要)
退出 XAMPP 以管理员身份再次运行。这将启动 Apache 和 MySql 服务
以管理员身份运行 cmd.exe。输入“C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld”——安装。这将为现有的 MySQL 安装重新安装服务
打开窗口服务。为现有的 MySQL 安装启动服务
【讨论】:
它说 -u 不是内部或外部命令【参考方案4】:我能够通过以管理员身份运行它来解决这个问题。
【讨论】:
这对我也有用。这在集中管理的工作站上可能是一个更大的问题,因为它们往往更具限制性。我家里有Win7 64b,不需要以管理员身份运行来安装服务,但在工作中我需要。【参考方案5】:这是因为您已将 apache 与 xampp apache 分开安装..... 不用担心..... 尝试以下步骤将解决您的问题
打开 cmd > 以管理员身份运行输入以下命令
httpd -k shutdown
httpd -k stop
httpd -k uninstall
或 打开powershell>以管理员身份运行输入以下命令
.\httpd -k shutdown
.\httpd -k stop
.\httpd -k uninstall
或
win + R
type services.msc
then find Apache24 or httpd
now open cmd > run as administrator
type sc delete "<your services name from the list for apache>"
感谢来源和贡献者:)
【讨论】:
【参考方案6】:试试看这篇文章,它非常相似,它帮助我解决了我的问题(删除以前安装的 apache 和 mysql)
XAMPP on Windows - Apache not starting
【讨论】:
【参考方案7】:转到命令提示符并以管理员身份打开
只需输入
sc delete MySQL
然后
sc delete Apache2.4
关闭 XAMPP,然后重新打开。
【讨论】:
以上是关于在 Win7 上使用 XAMPP 的 Apache、MySQL 和 FTP“检测到错误的路径”的主要内容,如果未能解决你的问题,请参考以下文章
WIN7 wamp 怎么同时安装 Xampp,不同时启动,不同端口,都无法启动Xampp的apache,80端口未占用
win7 32位配置apache+wsgi+django环境