iT邦幫忙

1

xampp 無法遠端連線

我目前要連到一個遠端資料庫(固定IP)
然後會使用他的資料庫

我在遠端有設權限了
也有開啟防火牆port 3306

在我使用的電腦打

<?php

$db_server = '遠端的固定IP';
$db_name = '資料庫名稱';
$db_user = '使用名子';
$db_passwd ='密碼';

//對資料庫連線
$db = mysqli_connect($db_server, $db_user , $db_passwd, $db_name);
if (mysqli_connect_error($db))
	echo "無法連線" .mysqli_connect_error();

//資料庫連線採UTF8
mysqli_set_charset($db,'utf-8');

//選擇資料庫
if (!@mysqli_select_db($db,'test'))
	die("無法使用資料庫")
?>

但是會無法連線
https://ithelp.ithome.com.tw/upload/images/20200621/20122463yk3y16VdsE.png

請問是甚麼問題呢?

dragonH iT邦超人 5 級 ‧ 2020-06-21 16:43:55 檢舉
檢查你 這 php 放的位置 + 你輸入的 url

喔 看錯 你的是403
lingwu iT邦新手 5 級 ‧ 2020-06-21 16:56:33 檢舉
php是放在C:\xampp\htdocs 之中
我是直接開啟這個php檔案看看可不可以連,我打"localhost/connection.php",所以結果如上面圖片一樣
1
rogeryao
iT邦大師 1 級 ‧ 2020-06-21 20:45:11

http.conf
for Apache 2.2

  <Directory />
      ServerName test
      Options None  
      Order allow,deny  
      Allow from all   
  </Directory> 

for Apache 2.4

<Directory />
Require all granted
</Directory> 

apache 重新啟動

看更多先前的回應...收起先前的回應...
lingwu iT邦新手 5 級 ‧ 2020-06-21 22:23:24 檢舉

我改完無法重新啟動
請問 ServerName 是改成localhost:80嗎

rogeryao iT邦大師 1 級 ‧ 2020-06-21 22:29:49 檢舉
ServerName 你的網站
或是
# ServerName
lingwu iT邦新手 5 級 ‧ 2020-06-21 22:50:47 檢舉

我使用2.4的方法
問題還是一樣

rogeryao iT邦大師 1 級 ‧ 2020-06-21 22:55:18 檢舉

資料庫連線用 ip , 不要用 localhost
mysql 要設定你的網站 ip 可以連線

lingwu iT邦新手 5 級 ‧ 2020-06-21 23:04:01 檢舉

請問要怎麼確定我的ip可以連線?

rogeryao iT邦大師 1 級 ‧ 2020-06-21 23:09:48 檢舉
1
japhenchen
iT邦大師 1 級 ‧ 2020-06-22 07:52:23

MySQL要加一個可以從特定IP或"任何"IP連接的使用者,且不要壞習慣用root
ALL PRIVILEGES 也是壞習慣,但我不知你要何種權限,你自己定
1.201是你的xampp的電腦上的IP

CREATE USER 'user'@'192.168.1.201' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES    
    ON database.*
    TO 'user'@'192.168.1.201'
    IDENTIFIED BY 'newpassword';

或 'user'@'%' 不指定IP,任何主機都能連

lingwu iT邦新手 5 級 ‧ 2020-06-23 00:50:03 檢舉

我是直接在xampp資料庫那邊加權限可以嗎?

最好還是用root在主機上用GRANT授權,會動到哪些表哪些欄位一句解決

1
Franky Chen
iT邦研究生 3 級 ‧ 2020-06-22 08:50:48

你把PHP黨路徑C:\xampp\htdocs的權限調一下看看
ex: Everyone -> 完全控制

0
混水摸魚
iT邦研究生 4 級 ‧ 2020-06-22 09:47:41

我猜你遠端的資料庫有固定ip,而 xampp沒有固定ip。
mysql 要開啟遠端連線的固定ip是填 xampp的ip,不能填localhost.需要xampp端有固定ip才能連哦。
這個給你參考參考:
https://www.webteach.tw/?p=3685

lingwu iT邦新手 5 級 ‧ 2020-06-23 00:52:12 檢舉

我自己電腦是連手機分享的所以是浮動IP,這樣可行嗎?

lingwu iT邦新手 5 級 ‧ 2020-06-23 01:05:35 檢舉

我在我電腦將my.ini bind改成我的IP了,可是還是一樣的錯誤

我要發表回答

立即登入回答