WAMP 服务器虚拟主机

WAMP Server VirtualHost

我设置了 WAMP,所有服务 运行。我能够从 Visual Studio 代码编辑器和本地主机上的 CakePHP 环境连接到现有数据库“mysql”。

添加数据库时,无论是通过 MySQL 控制台还是通过 MyPHPAdmin,我都收到以下错误。

Warning: mysqli_connect(): (HY000/1049): Unknown database 'testmysqlniels' in C:\wamp64\www\wamp_projects\WAMP Test\db_connection.php

添加新用户并授予该用户所有权限时,我收到以下错误消息。我确定此用户拥有所有权限,因此绝对还有阅读权限。

Warning: mysqli_connect(): (HY000/1045): Access denied for user 'niels'@'localhost' (using password: YES) in C:\wamp64\www\wamp_projects\WAMP Test\db_connection.php

我也通过 MySQL 控制台连接到 MyPHPAdmin 中的系统似乎与我在草图中和通过 CakePHP 调用的系统不同。我认为错误出在我的项目文件夹的虚拟主机设置中。

我的草图在本地主机上,在 YOURVIRTUALHOST“wampprojects”下。 C:\wamp64\www\wamp_projects\WAMP 测试(路径)

代码适用于现有表,不适用于新表..

我的代码:

<?php

    $dbServerName = "wampprojects";
    $dbUserName = "root";
    $dbPassword = "";
    $dbName = "testmysqlniels";

    // need to use mysqli_connect, is improved version (Improved)
    $conn = mysqli_connect($dbServerName, $dbUserName, $dbPassword, $dbName);


    $search_query = "SELECT * FROM help_category";
    $search_query_cost = "SELECT * FROM tables_priv";
    $search_sports = "SELECT * FROM sports_tabel";

    $result = $conn->query($search_query);
    $result_priv = $conn->query($search_sports);

    print_r($result_priv);

    if($result->num_rows > 0){

        while($row = $result->fetch_assoc()) {
            echo "id: " . $row["name"]. " - Name <br>";
        }

    }

    $conn->close();

    ?>

我的数据库模式显示存在数据库和表..

所以总结一下,我可以调用所有自动包含的数据库/表,没有添加任何其他内容。看来我的参考系统有问题..

我已经阅读了一些关于设置的文章"httpd-vhosts.conf file",但没有定论..

这是我的文件的当前配置:

# Virtual Hosts
#
<VirtualHost *:80>
  ServerName localhost
  ServerAlias localhost
  DocumentRoot "${INSTALL_DIR}/www"
  <Directory "${INSTALL_DIR}/www/">
    Options +Indexes +Includes +FollowSymLinks +MultiViews
    AllowOverride All
    Require local
  </Directory>
</VirtualHost>



#
<VirtualHost *:80>
    ServerName wampprojects
    DocumentRoot "c:/wamp64/www/wamp_projects"
    <Directory  "c:/wamp64/www/wamp_projects/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

我刚刚读到的另一件事是我的 PC 上可能已经 运行 有一个 Apache 的副本,这混淆了路由机制..

我做错了什么?

终于找到问题了。我的电脑上肯定已经 运行 有 Apache Server 的副本了。这导致我从我的代码中查询了错误的数据库副本。这解释了为什么我可以访问所有原始 MySQL 数据库和表,而不是新的。

我做的太过激了,不知道能不能用其他方式解决。我使用 Apache、Android Studio、Java 和 Node.js 删除了我所有的运行时环境。还删除了 Visual Studio 代码。然后我卸载并重新安装了 WAMP,然后重新安装了 VSC。

希望这对某人有所帮助!