Php

PHP 應該安裝在 Apache Web 伺服器還是 MySQL 數據庫伺服器上?

  • August 9, 2016

設置:

兩個獨立的盒子:

  1. Fedora 15、Apache、PHP 和 PHP 模組
  2. Fedora 15,MySQL

我無法從 Apache Web 伺服器連接到 MySQL。

<?php

 echo "<br>begin test<br>";

 mysql_connect('hostname[FQDN]','username','password') or ("Error" . mysql_error());

 echo "<br>end test<br>";

?>

當 Apache 為頁面提供服務時,正在顯示“開始測試”文本,但沒有 MySQL 錯誤或“結束測試”文本。

我可以使用遠端機器上埠 3306 上的 MySQL 工作台連接到 MySQL DB。權限和對使用者和 IP 地址的訪問已完全開放 (%),以避免在這些方面出現任何問題。

不要忘記 , mysql_connect,mysql_error等不是 PHP 的一部分。它們是一個擴展。

如果你想測試 php 是否有這些功能,你可以做一個小測試,比如:

if(!function_exists('mysql_connect'))
   echo 'MySQL extension not installed';

你應該擁有mysqlmysql-server安裝在你的 MySQL Box 上

您應該擁有phpphp-mysql安裝在您的 Apache 機器上。如果尚未安裝php-mysql,請安裝它:yum -y install php-mysql然後重新啟動 Apache。

$ netstat -l

您應該看到 mysql 伺服器在埠 3306 上偵聽。如果是 127.0.0.1,則伺服器僅在環回介面上偵聽。在這種情況下修復你my.cnf的。

引用自:https://serverfault.com/questions/295248