【问题标题】:Apache, PHP, MySQL, PDO, Permission denied , laravelApache,PHP,MySQL,PDO,权限被拒绝,laravel
【发布时间】:2016-04-13 01:13:24
【问题描述】:

我正在开发一个有趣的小型 PHP Web 应用程序(我的重复日常任务的管理器),主要用于练习。 “生产”服务器有点限制,我无法在那里查看 httpd(Apache)的错误日志,所以我将自己的本地 httpd 设置为开发服务器(很有意义)。但是,我的 Web 应用程序使用 MySQL 数据库。我最终会创建一个本地的,但我想,为了让事情更容易开始,我会使用远程的。 SQLSTATE[HY000] [2002] Permission denied

这是每次我尝试从本地 httpd 运行 Web 应用程序时返回的结果。我正在使用 PHP 的 PDO 数据库接口和它的 mysql 驱动程序,它在部署在远程服务器上时可以工作。我确保我的远程服务器对我的本地用户具有权限。我测试了从我的本地机器从 mysql 客户端进行的连接,它工作正常。我从命令行测试了 PHP 连接语句并且......它工作了。它只会在 Web 应用程序中运行时引起问题。

请告诉我如何解决这个问题。这是我遇到错误的网站pickprogress.com

【问题讨论】:

  • 也许在 localhost 你有 "user: root; password: ;"在生产中你有“用户:普通用户;密码:asdlk2423dgfgklkl”,你不改变这些参数?显示更多代码以提供帮助
  • 能否包含返回错误的代码?
  • 不,我正在尝试解决这个问题,因为过去 6 小时检查了每一件事。将主机名更改为 127.0.0.1 检查用户名和密码。如果用户名和密码错误,那么它会给出另一个异常,而不是这个
  • 您是否转发过此链接? stackoverflow.com/questions/20723803/…
  • 登录到您的 mysql 实例,并检查您尝试连接的用户所授予的权限。我认为用户可能仅限于来自特定 IP 的连接,因此不会接受来自本地的连接。

标签: php mysql apache laravel pdo


【解决方案1】:

一些不同的服务器提供商为我们提供了他们的数据库服务器名称。而不是写 localhost127.0.0.1 我们必须写他们给定的服务器名称。

自从过去 8 小时以来,我一直在尝试解决这个问题,但没有找到单一的解决方案,但无论如何我现在已经解决了。

【讨论】:

    猜你喜欢
    • 2022-01-18
    • 2014-04-10
    • 1970-01-01
    • 2017-04-10
    • 2012-08-13
    • 2014-06-29
    • 2015-05-05
    相关资源
    最近更新 更多