【问题标题】:How do I use my host server info instead of localhost on XAMPP?如何在 XAMPP 上使用我的主机服务器信息而不是 localhost?
【发布时间】:2020-04-26 09:30:07
【问题描述】:

我一直在 XAMPP 中构建一个具有 PHP 功能的网站,并且一切都在 localhost 中完美运行。虽然,我知道为了在实时托管服务器上拥有相同的功能,我需要更改我使用的 config.php 文件中的服务器信息:

<?php
    define('ROOT_URL', 'http://localhost/newkellumws/');
    define('DB_HOST', 'localhost');
    define('DB_USER', 'root');
    define('DB_PASS', 'austink01');
    define('DB_NAME', 'kellumws');

我尝试将 DB_HOST 更改为我的托管配置文件的名称服务器,但没有成功。非常感谢您的任何帮助,并感谢您抽出宝贵的时间。如果这是一个新手问题,我深表歉意......

【问题讨论】:

  • 我们无法回答这个问题。您需要从您的提供商处获取数据库服务器的主机名。
  • 我认为数据库服务器的主机名将是我的托管配置文件的名称服务器,但我尝试使用 DB_USER 并仍然无法连接。
  • 你是在电脑上运行代码还是上传到服务器?如果您在本地运行它,您的主机可能已对公众关闭了数据库端口,因此您将无法连接
  • 我已经在我的计算机上本地运行代码并且一切正常,但是当我将文件上传到我的主机服务器时,数据库没有连接。我将 DB_HOST 更改为我的主机服务器名称并将文件上传到主机服务器,它仍然无法连接。
  • 您可能还需要更改帐户用户、密码和数据库名称等内容。但这些是我们无法提供帮助的事情,您需要询问您的托管服务提供商......

标签: php xampp hosting


【解决方案1】:

假设您也在移动站点,主机名将保持为 localhost(与大多数共享主机一样)

假设它是 cPanel 托管,您首先需要创建数据库。 然后,您可以创建一个 SQL 帐户并授予其访问数据库的权限(推荐)或使用您的 cPanel 凭据(不推荐)

所以你的配置看起来像这样:

define('ROOT_URL', 'http://example.com/newkellumws/');
define('DB_HOST', 'localhost'); // Website and SQL ruinning on the same server
define('DB_USER', 'exampl_kellumws');
define('DB_PASS', 'aBc*63oie8wfq');
define('DB_NAME', 'exampl_kellumws');

https://documentation.cpanel.net/display/68Docs/MySQL+Databases

如果该站点仍将通过 XAMPP 运行(无论出于何种原因),您还需要允许远程 MySQL

https://documentation.cpanel.net/display/68Docs/Remote+MySQL

所以你的配置应该是这样的:

define('ROOT_URL', 'http://example.com/newkellumws/');
define('DB_HOST', 'c01.example.host'); //Address the SQL Server
define('DB_USER', 'exampl_kellumws');
define('DB_PASS', 'aBc*63oie8wfq');
define('DB_NAME', 'exampl_kellumws');

如果您仍有问题,请联系您的托管服务提供商,因为他们会了解服务器设置和要求。

您还可以使用以下内容创建 testConnection.php 以帮助诊断错误

<?php
require_once('path/to/file/with/config.php');
//Step-1 : Create a database connection
$connection=mysql_connect(DB_HOST,DB_USER,DB_PASS);
if(!$connection) {
    die(“Database Connection error: ” . mysql_error());
}
//Step-2 : Select a database to use
$db=mysql_select_db(DB_NAME,$connection);
if(!$db) {
    die(“Database Selection error” . mysql_error());
}
echo('Connected to Database');

【讨论】:

    【解决方案2】:

    您的服务器信息和本地 XAMP 是不同的 localhost 工作方式如下。 你不需要 url 部分作为它的 localhost/your_folder

    <?php
        define('DB_HOST', 'localhost');
        define('DB_USER', 'root');
        define('DB_PASS', ''); //Xamp doesnt have a password for root as default leave it empty if you didnt set one.
        define('DB_NAME', 'kellumws');
        define('PORT', '3306'); 
    

    XAMP 请求端口的最新版本MySql 端口,将其添加到您的连接中。大部分是默认的 3306,但有时它会更改为 3307 或 3308,因为 mariaDB 是默认设置,您可以在 XAMP 工具上看到真实路径。

    如果您创建了一个文件夹,那么只需致电http://localhost/newkellumws/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-04
      • 2017-09-10
      • 1970-01-01
      • 2015-09-08
      • 2015-11-08
      • 2017-01-06
      • 2021-09-10
      • 1970-01-01
      相关资源
      最近更新 更多