(本文章原始記錄於 2010 年 5 月 13 日)

******* 管理介面與設定 *******

  1. 進入 XAMPP 控制面板,裡面可以控制 Apache、MySQL、FileZilla、Mercury、
    Tomcat 的啟動(start)與關閉(stop),以及各程式的管理介面(admin),
    個別 Server 程式的開啟與關閉程式如下:
    Apache & MySQL start: .\xampp\xampp_start.exe
    Apache & MySQL stop: .\xampp\xampp_stop.exe

    Apache start: .\xampp\apache_start.bat
    Apache stop: .\xampp\apache_stop.bat

    MySQL start: .\xampp\mysql_start.bat
    MySQL stop: .\xampp\mysql_stop.bat

    Mercury Mailserver start: .\xampp\mercury_start.bat
    只能透過圖形化介面(GUI)來啟動/停止 Mercury

    FileZilla Server start: .\xampp\filezilla_start.bat
    FileZilla Server stop: .\xampp\filezilla_stop.bat

  2. 若要設定 Server 程式為 Windows 服務(或解除)的話,可以執行以下的批次檔:
    Apache install: .\xampp\apache\apache_installservice.bat
    Apache uninstall: .\xampp\apache\apache_uninstallservice.bat

    MySQL install: .\xampp\mysql\mysql_installservice.bat
    MySQL uninstall: .\xampp\mysql\mysql_uninstallservice.bat

    FileZilla install: .\xampp\FileZillaFTP\filezilla_installservice.bat
    FileZilla uninstall: .\xampp\FileZillaFTP\filezilla_uninstallservice.bat

    Mercury install: .\xampp\MercuryMail\mercury_installservice.bat
    Mercury uninstall: .\xampp\MercuryMail\mercury_uninstallservice.bat

  3. 各程式的主要設定檔位置如下:
    Apache basic configuration: .\xampp\apache\conf\httpd.conf
    Apache SSL: .\xampp\apache\conf\extra\httpd-ssl.conf
    Apache Perl (only addon): .\xampp\apache\conf\extra\perl.conf
    Apache Tomcat (only addon): .\xampp\apache\conf\java.conf => 找不到
    Apache Python (only addon): .\xampp\apache\conf\python.conf => 找不到
    PHP: .\xampp\php\php.ini
    MySQL: .\xampp\mysql\bin\my.ini
    phpMyAdmin: .\xampp\phpMyAdmin\config.inc.php
    FileZilla FTP: .\xampp\FileZillaFTP\FileZilla Server.xml
    Mercury Mail basic configuration: .\xampp\MercuryMail\MERCURY.INI
    Sendmail: .\xampp\sendmail\sendmail.ini

    預設 Apache 網頁根目錄在 .\xampp\htdocs
    (可透過修改 httpd.conf 的 DocumentRoot 變更預設值)

    以上各種資料可以參考
    http://www.apachefriends.org/zh_tw/xampp-windows.html

  4. 幾種安全性設定:
    1. MySQL:
      啟動 MySQL Server,由命令提示字元登入 MySQL Server 修改 root 密碼
      C:\xampp> mysql -u root mysql (尚無密碼所以可以直接登入)

      mysql> UPDATE user SET Password=password(‘密碼’) WHERE User=’root’;
      mysql> FLUSH PRIVILEGES; (刷新狀態使密碼修改立即生效)

      若先前已安裝過 AppServ 等將 MySQL 設定成系統服務,
      則在此啟動 MySQL 時將會以服務的方式啟動先前安裝的 MySQL Server,
      要解決此一問題,必須至原先安裝 MySQL 的目錄下執行 mysql_serviceuninstall.bat (或之類的程式)
      將原先註冊為服務的 MySQL 取消註冊才行。
      Apache Server 也一樣用專用的 apache_serviceuninstall.bat 來取消服務才不會互相衝突

    2. phpMyAdmin:
      以文字編輯器修改 .\xampp\phpMyAdmin\config.inc.php 檔案,
      將 $cfg[‘Servers’][$i][‘auth_type’]=’config’; 這一段
      修改成 $cfg[‘Servers’][$i][‘auth_type’]=’http’; (config 改成 http)
      讓程式透過 http 網頁認證登入的使用者。
    3. FileZilla Server:
      透過 XAMPP 控制面板啟動 FileZilla Server 後,再按 Admin 開啟控制面板。
      一般可執行 .\xampp\FileZillaFTP\FileZilla Server Interface.exe 開啟面板。

      點 Edit→Users,將 General 的 newuser 的 Password 改掉再按 OK 即可。

    4. Mercury Mail Servers:
      透過 Mercury 控制面板,點 Configuration→Manage local users,
      再選擇 newuser,點 Change 按鈕,將 Mail password 改掉再按 OK 即可。

修改完以上幾點設定後,開啟 Apache,連上 http://localhost/security
即可看見第二至五項(MySQL、phpMyAdmin、FileZilla Server、Mercury Mail)
顯示安全。基本上若不開啟 Server 程式,就不會有連外的危險出現。