管理伺服器指引與錯誤訊息:IBM HTTP Server
系統管理 IBM HTTP Server 文件

使用管理伺服器指引和識別錯誤訊息

這一節提供使用管理伺服器指引和識別錯誤訊息的相關資訊。 這一節的結尾有相關資訊的鏈結。

使用管理伺服器指引

下一節提供管理伺服器指引的詳細資料,其中包括指引說明、預設值、範圍、語法和相關附註附註:

<AdminRoot> 區段

  • 說明:定義管理伺服器所配置的目標或 IBM HTTP Server 配置檔。 每一個 <AdminRoot> 區段都會參照一組專屬之目標伺服器的配置檔。 管理伺服器配置檔需要至少一個 <AdminRoot> 區段。 ServerRoot 目錄和配置檔會識別目標配置。 您可以有含相同根引數的多個 <AdminRoot> 指引,因為在相同 ServerRoot 目錄下可以有多個最上層配置檔。 有幾個其他的指引可用於 <AdminRoot> 區段。 這些指引的範圍以它們宣告的 <AdminRoot> 區段為限。
  • 預設值:server_root
  • 模組:mod_core
  • 配置檔中包含多個實例:是
  • 範圍:伺服器配置
  • 語法:<AdminRoot server_root> ... </AdminRoot>
       <AdminRoot "/usr/local/apache">
          AdminAlias "My Favorite Server"
          TargetServerRoot "/usr/local/apache"
          TargetServerConfig conf/httpd_test.conf
          TargetAdminAllowDir /usr/local/apachea
          AdminAllowDir /usr/local/apacheb deep
       </AdminRoot>
    

    附註:如果您沒有指定 server_root,就會發生錯誤。

  • 值:通往根目錄的路徑。

AdminAlias

  • 說明:指定目標伺服器的別名。
  • 預設值:在 <AdminRoot> 區段中,TargetServerConfig 指引所指定的完整路徑名稱的值。
  • 模組:mod_core
  • 配置檔中包含多個實例:是
  • 範圍:伺服器配置
  • 語法:AdminAlias <server_alias>
  • 值:如果您在 <AdminRoot> 區段中沒有宣告 AdminAlias,這個值會預設為目標伺服器最上層配置檔的完整路徑名稱。

AdminAllowDir

入門 >管理伺服器中更新「配置可存取的目錄」會產生 AdminRoot 的 AdminAllowDir 副指引。 這個指引主要在控制「管理伺服器」GUI 的目錄存取。 「管理伺服器」可存取在 AdminRoot 的 AdminAllowDir 副指引所指定的檔案與目錄。

  • 說明:透過管理伺服器的瀏覽功能來宣告可檢視的指引。 deep 選項可讓您瀏覽存取 AdminAllowDir 目錄的子目錄。 如果您無法瀏覽子目錄,您可以指定 shallow 選項。
  • 預設值:如果您沒有指定這個指引,您就沒有目錄或檔案瀏覽存取權。 如果您沒有指定 deepshallow,伺服器預設值為 shallow
  • 模組:mod_core
  • 配置檔中包含多個實例:是
  • 範圍:伺服器配置
  • 語法:AdminAllowDir <directory> [deep | shallow]
  • 值:通往伺服器中可檢視的目錄之路徑。

TargetAccessConfig

  • 說明:指定目標伺服器的最上層存取配置檔路徑。您可以指定絕對路徑或相對路徑。 如果指定為相對路徑,伺服器會將 <AdminRoot> 區段中指定的 ServerRoot 視為根目錄。
  • 預設值:conf/access.conf
  • 模組:mod_core
  • 配置檔中包含多個實例:是
  • 範圍:伺服器配置
  • 語法:TargetAccessConfig <file_path>
  • 值:通往存取配置檔的路徑。

TargetResourceConfig

  • 說明:指定目標伺服器資源配置檔的路徑。 可以指定絕對路徑或相對路徑。 如果指定為相對路徑,便會將 <AdminRoot> 區段中所指定的 ServerRoot 當作根目錄。
  • 預設值:conf/srm.conf
  • 模組:mod_core
  • 配置檔中包含多個實例:是
  • 範圍:伺服器配置
  • 語法:TargetResourceConfig <file_path>
  • 值:通往資源配置檔的路徑。

TargetServerConfig

  • 說明:指定目標伺服器最上層配置檔的路徑。 可以指定絕對路徑或相對路徑。 如果指定為相對路徑,伺服器會利用 <AdminRoot> 區段中指定的 server_root 參數來作為根目錄。
  • 預設值:conf/httpd.conf
  • 模組:mod_core
  • 配置檔中包含多個實例:是
  • 範圍:伺服器配置
  • 語法:TargetServerConfig <file_path>
  • 值:httpd.conf 檔的路徑。

識別管理伺服器錯誤訊息

這一節指出各種伺服器錯誤訊息和要採取的適當動作。

一般成功訊息

以下是指出順利完成的一般訊息:備妥

伺服器重新啟動訊息

以下是伺服器重新啟動的相關訊息:

  • ADM1202I: 已順利發出啟動要求
  • ADM1204I: 已順利發出停止要求
  • ADM1206I: 已順利發出重新啟動要求
  • ADM1208W: 已忽略停止要求!伺服器在執行中
  • ADM1210W: 已忽略重新啟動要求!伺服器在執行中
  • ADM1212W: 已忽略啟動要求! 伺服器已在執行中
  • ADM1214E: 啟動要求失敗!請檢查錯誤日誌(請參閱詳細資料
  • ADM1216E: 停止要求失敗!請檢查錯誤日誌(請參閱詳細資料
  • ADM1218E: 重新啟動要求失敗!請檢查錯誤日誌(請參閱詳細資料
  • ADM1220E: 要求未完成。配置檔 '%s' 中有語法錯誤。(請參閱詳細資料
  • ADM1221I: 請稍候,管理伺服器在重新啟動。
  • ADM1222E: 向目標伺服器發出的重新啟動要求失敗。(請參閱詳細資料
  • ADM1224E: 管理伺服器重新啟動失敗。"
  • ADM1226E: 配置檔 '%s' 語法檢查失敗。(請參閱詳細資料

目標配置檔案錯誤

以下是目標配置檔的相關訊息:

  • ADM1228E: '%s' 檔的第 %d 行超出 %d 個字元的長度上限。
  • ADM1230E: '%s' 檔的第 %d 行語法錯誤。
  • ADM1232E: 在 '%s' 檔的第 %d 行發現無效的空白行。在連續字元之後,不能有空白行。
  • ADM1234E: 在 '%s' 檔的第 %d 行發現無效的連續字元語法。
  • ADM1236E: 範圍在 '%s' 檔的第 %d 行有無效的母項範圍。(請參閱詳細資料
  • ADM1238E: 在 '%s 檔的第 %d 行,發現 <%s...> 範圍有不符的結束標示。
  • ADM1240E: 在 %s 檔中的第 %d 行中,字串超出 %d 個字元的緩衝區大小上限。
  • ADM1242E: 在配置檔中找到無效的範圍類型 <%s...>。
  • ADM1244E: 在考量 <%s...> 範圍類型時,偵測到管理伺服器內部錯誤。

讀取和寫入錯誤

以下是讀取和寫入錯誤的相關訊息:

  • ADM1246E: 指定的目錄路徑 "%s" 無效。(請參閱詳細資料
  • ADM1248E: 試圖開啟 "%s" 檔時,收到錯誤碼 %d。(請參閱詳細資料
  • ADM1250E: 管理伺服器使用者設定不允許存取 "%s" 檔。(請參閱詳細資料
  • ADM1252E: 讀取 "%s" 檔的第 %d 行時,發生錯誤。
  • ADM1254E: 試圖取得 "%s" 檔的狀態資訊時,收到錯誤碼 %d。
  • ADM1256E: 前次更新之後,改變過磁碟中的 "%s" 檔。
  • ADM1258E: 寫入 "%s" 檔時,收到 %d 錯誤碼。

cfgdata 分派表問題

cfgdata 分派表問題的相關訊息:

  • ADM1260E: 指定無效的顯示引數 '%s' 給 '%s' 欄位。
  • ADM1262E: 指定無效的寫入引數 '%s' 給 '%s' 欄位。
  • ADM1264E: 將無效的指引名稱 '%s' 傳遞給函數。
  • ADM1266I: 目前沒有載入下列模組:%s

使用者輸入問題

以下是使用者輸入問題的相關訊息:

  • ADM1268I: 不相容的作業和範圍組合。(請參閱詳細資料
  • ADM1270I: 根範圍不能重複。
  • ADM1272I: 重複範圍 %s 已經存在。
  • ADM1274I: 不能移動根範圍。
  • ADM1276I: 沒有指定範圍名稱。
  • ADM1278E: 在 '%s' 變數中傳回無效的資料 '%s'。

內部錯誤

  • ADM1280E: 管理伺服器內部錯誤:剖析查詢字串時,發生錯誤。
  • ADM1282E: 管理伺服器內部錯誤:無效的查詢字串語法。
  • ADM1284E: 管理伺服器內部錯誤:查詢字串指定無效的變數名稱 '%s'。
  • ADM1286E: 管理伺服器內部錯誤:無法取得 '%s' 範圍。
  • ADM1288E: 管理伺服器內部錯誤:管理伺服器配置檔內沒有指定 AdminRoot 範圍。
  • ADM1290E: 管理伺服器內部錯誤:指定無效的範圍識別碼 '%d' 給指引搜尋。
  • ADM1292E: 管理伺服器內部錯誤:非預期的空資料字串。
  • ADM1294E: 管理伺服器內部錯誤:傳遞無效的指引 '%s' 給函數。
  • ADM1296E: 管理伺服器內部錯誤:從 '%s' 記號開始,引數數目超出上限 %d。
  • ADM1298E: 管理伺服器內部錯誤:套表傳回的資料中有無效的陣列語法。
  • ADM1300E: 套表傳回的 '%s' 路徑語法錯誤。
  • ADM1302E: 沒有啟用任何目錄的檔案瀏覽。請參閱詳細資料
  • ADM1304E: 管理伺服器內部錯誤:試圖建立管線時,收到錯誤碼 %d。
  • ADM1306E: 指定無效的安裝根路徑給 "%s"。 請指定 apache 伺服器的安裝路徑來更正錯誤。
  • ADM1308E: 管理伺服器內部錯誤:試圖建立程序分支時,收到錯誤碼 %d。
  • ADM1310E: 試圖複製檔案描述子時,收到錯誤碼 %d。
  • ADM1312E: 讀取要求資訊時,發生錯誤。
  • ADM1314E: 已在瀏覽器中停用 Cookie。

要求失敗!請檢查日誌。

啟動或重新啟動 IBM HTTP Server 時,發生執行時期錯誤。

  1. 檢查管理伺服器的錯誤日誌 admin_error.log 中的錯誤的可能原因。 請移至入門 > 檢視管理日誌
  2. 移至日誌 > 檢視日誌。 請檢查 IBM HTTP Server 錯誤日誌 error.log,找出可能的原因。
  3. 試圖將 IBM HTTP Server 啟動為程序:apache -f <configfile>。 利用 net start 將 IBM HTTP Server 啟動成一項服務,可以抑制某些執行時期錯誤。 可顯示不含其他詳細資料的錯誤,來說明服務無法開始。

重新啟動目標伺服器失敗。

檢查伺服器所傳回的訊息。 如果訊息指出指引可能拼字錯誤或遺漏了模組,您可以假設處理指引的模組沒有載入。 下列方式會偵測出需要載入的模組:

  1. 移至檢視配置 > 指引索引,找出及選取指引名稱;這時會出現設定這個指引的作業。
  2. 檢查頂端牛角旁有關頁面必要模組的傳回訊息。
  3. 如果您看到傳回訊息中列出了未載入的模組,請開啟說明。 請選取頁面中的項目,直到遺漏的指引名稱出現在頁面底端為止。 處理每個指引的模組名稱都會顯示在指引名稱旁。
  4. 如果您看到傳回訊息中列出了模組,請按一下傳回訊息中的模組名稱。 「管理伺服器」即會顯示「模組序列」頁面。 您可以載入必要的模組,也可以取消設定指引設定,使重新啟動的錯誤不再出現。
  5. 重新啟動伺服器。

配置檔檢查語法失敗。

請檢查伺服器傳回的訊息,以取得指引、名稱和語法錯誤性質的說明。 如果要找出指引的設定位置及更正錯誤:

  1. 移至檢視配置 > 指引索引,找出及選擇指引名稱;這時會出現設定這個指引的作業。
  2. 開啟說明,並選取頁面中的項目,直到指引名稱出現在頁面底端的「說明」區為止。
  3. 在設定指引的輸入欄位中,進行必要的更正。
  4. 重新啟動伺服器。
  5. 附註:某些指引設定會跨越多個輸入欄位。

範圍的母節點範圍無效。

範圍在無效的母項範圍內。 範圍有含下列有效關係的階層結構:

  • <Global>
    • <SNMP>
    • <Limit>
    • <Files>
    • <Files Match>
      • <Limit>
    • <Location>
      • <Limit>
    • <Location Match>
      • <Limit>
    • <Directory>
      • <Files>
      • <Files Match>
      • <Limit>
    • <Directory Match>
      • <Files>
      • <Files Match>
      • <Limit>
    • <Virtual Host>
      • <Location>
      • <Location Match>
      • <Directory>
      • <Directory Match>
      • <Files>
      • <Files Match>
      • <Limit>

所指定的目錄路徑無效。

伺服器找不到指定的目錄路徑,或無法將這個路徑當作目錄路徑來剖析。

AIX 使用者
HP 使用者 Linux 使用者 Solaris 使用者

嘗試開啟檔案時,收到錯誤碼。

此錯誤的發生原因可能是檔案不存在,或您沒有存取許可權。 除了管理伺服器所允許的存取權外,您的作業系統可能需要有目錄和檔案的許可權。 如果是在 AIX、HP、Linux 或 Solaris 中執行,請參閱檔案許可權,以取得更明確的資訊。

「管理伺服器」使用者設定不允許存取檔案。

您試圖存取的檔案不在指定給管理伺服器存取的目錄內。 您可以在入門 > 管理伺服器中,以管理伺服器能夠存取您的檔案系統中的哪些目錄。

附註:這些設定值會保持不同於任何必要的作業系統存取許可權。

適用於 AIX 使用者
適用於 HP 使用者 適用於 Linux 使用者 適用於 Solaris 使用者

寫入檔案時,發生錯誤。可能尚未授與寫入存取權。

除了管理伺服器所允許的存取權之外,必要的目錄和檔案許可權也可以存在。 如果是在 AIX、HP、Linux 或 Solaris 中執行,請參閱檔案許可權,以取得更明確的資訊。

不相容的作業及範圍組合。

作業會根據定義範圍內的有效相關指引設定來區分。 以下是每項作業的有效範圍清單。 這份清單只包括範圍所限制的作業。

作業名稱   有效範圍
基本設定
基核設定:   <Global>、<Virtual Host>

進階內容:   <Global>

伺服器選項:   所有範圍,<Limit> 和 <SNMP> 除外

標題:   所有範圍,<Limit> 和 <SNMP> 除外

快取期限:   所有範圍,<Limit> 和 <SNMP> 除外

模組序列:   <Global>

其他檔案:   <Global>

Meta 標題:   所有範圍,<Limit> 和 <SNMP> 除外

 
索引作業
選項:   <Global>、<Virtual Host>、<Directory>、<Directory Match>

檔案:   <Global>、<Virtual Host>、<Directory>、<Directory Match>

圖示:   <Global>、<Virtual Host>、<Directory>、<Directory Match>

檔案說明:   <Global>、<Virtual Host>、<Directory>、<Directory Match>

圖示說明:   <Global>、<Virtual Host>、<Directory>、<Directory Match>

 
一般存取
一般存取:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>、<Limit>

個別存取:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>、<Limit>

群組存取:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>、<Limit>

其他存取:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>、<Limit>

匿名存取:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>、<Limit>

 
安全
伺服器安全:   <Global>

主電腦權限:   <Virtual Host>

目錄權限:   <Directory>、<Directory Match>

憑證廢止清冊:   <Global>、<Virtual Host>

加密加速器:   <Global>、<Virtual Host>

 
日誌
主要日誌:   <Global>、<Virtual Host>

其他日誌:   <Global>、<Virtual Host>

目錄日誌:   所有範圍,<Limit> 和 <SNMP> 除外

檢視日誌:   <Global>、<Virtual Host>

 
映射
訊息:   所有範圍,<Limit> 和 <SNMP> 除外

別名:   <Global>、<Virtual Host>

重新導向:   <Global>、<Virtual Host>

使用者名稱目錄:   <Global>、<Virtual Host>

 
Script
相關動作:   所有範圍,<Limit> 和 <SNMP> 除外

定義變數:   <Global>、<Virtual Host>

取消設定變數:   <Global>、<Virtual Host>

條件式變數:   <Global>

瀏覽器偵測:   <Global>

 
效能
伺服器設定:   <Global>

設定快取:   <Virtual Host>、<Directory>、<Directory Match>、 <Location>、<Location Match>

SNMP:   <SNMP>

 
MIME
MIME 檔案:   所有範圍,<Limit> 和 <SNMP> 除外

MIME 類型:   所有範圍,<Limit> 和 <SNMP> 除外

MIME 編碼:   所有範圍,<Limit> 和 <SNMP> 除外

文件處理程式:   所有範圍,<Limit> 和 <SNMP> 除外

移除處理程式:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>

語言檔案:   所有範圍,<Limit> 和 <SNMP> 除外

類型處理:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>

 
快速 CGI
內部伺服器:   <Global>、<Virtual Host>

配置:   <Global>

外部伺服器:   <Global>

存取:   <Directory>、<Directory Match>

 
檔案系統
啟用 DAV:   <Directory>、<Directory Match>、<Files>、<Files Match>、<Location>、<Location Match>

DAV 設定:   <Global>、<Virtual Host>

 
Proxy
Proxy 快取:   <Global>、<Virtual Host>

Proxy 設定:   <Global>、<Virtual Host>

 
檢視配置
編輯配置:   所有範圍

 

沒有為任何目錄啟用檔案瀏覽功能。

管理伺服器沒有指定存取任何目錄。 請移至入門 > 管理伺服器,指定管理伺服器在您的檔案系統中指定目錄存取。

附註:這些設定值會保持不同於任何必要的作業系統存取許可權。

UNIX 使用者

授予檔案許可權

除了管理伺服器能所允許的存取權之外,一般 UNIX 系統管理也有目錄和檔案許可權需求。

IBM 管理伺服器會從管理伺服器配置檔 admin.conf 中的 User 和 Group 指引,衍生各要求的檔案許可權。

  • 您經由 AdminAllowDir 指引容許存取的任何目錄, 也都至少要讓管理伺服器配置檔 admin.conf 中的使用者 ID 或群組,具有讀取檔案存取權。
  • 對於這些檔案或包含配置檔的目錄,比方說,/confhttpd.confadmin.conf,請確定管理伺服器使用者 ID 或群組有讀寫檔案存取權。
  • 對於這些檔案或包含使用者鑑別檔或群組鑑別檔的目錄,請確定管理伺服器使用者 ID 或群組有讀寫檔案存取權。

AIX 使用者
HP 使用者 Linux 使用者 Solaris 使用者

執行 setupadm Script

setupadm Script 會建立配置檔更新許可權。 在安裝好預設伺服器之後,您不能更新配置檔,除非您執行 setupadm Script 或手動設定許可權。

setupadm script 會提示您輸入資訊。請參閱以下說明:  

  • 提示:
    • 使用者 ID
      用來執行「管理伺服器」的使用者 ID。這個 Script 會建立這個使用者 ID。
    • 群組名稱
      管理伺服器會透過群組檔案許可權來存取配置檔和鑑別檔。 Script 會透過這個 Script 來建立指定的群組。
    • 目錄
      您可以在其中找到配置檔和鑑別檔的目錄。
    • 檔案名稱

      這些檔案群組和檔案許可權會變更:

      • 單一檔案名稱
      • 含萬用字元的檔案名稱
      • 全部(預設值)- 特定目錄中的所有檔案。
    • 處理:

      setupadm script 會變更配置檔和鑑別檔的群組和檔案許可權。

      管理伺服器需要配置檔和鑑別檔的讀寫存取權,才能執行 Web 伺服器配置資料的管理工作。

      管理伺服器必須以 root 身分來執行 adminctl restart,才能順利重新啟動管理伺服器和 IBM HTTP Server。

UNIX 使用者

手動設定許可權

如果要建立管理伺服器的新使用者和群組,請遵循各平台的下列步驟:

AIX 使用者

在 AIX 上:

  1. 進入 SMIT。按一下安全和使用者
  2. 按一下群組 > 新增群組
  3. 輸入群組名稱,如 admingrp。按一下確定
  4. 回到「安全和使用者」。
  5. 按一下使用者 > 新增使用者
  6. 輸入使用者名稱(如 adminusr)。輸入前面建立的主群組。
  7. 按一下確定

HP-UNIX 使用者

在 HP 上:

  1. 從指令行中執行 groupadd <群組名稱>
  2. 執行 useradd -g <群組名稱> <user ID>

Linux 使用者

在 Linux 上:

  1. 從指令行中執行 groupadd <群組名稱>
  2. 執行 useradd -g <群組名稱> <user ID>
  3. 更新 IBM HTTP Server 配置檔 httpd.conf 的群組和檔案許可權。
    1. 在指令提示下,切換到含有 httpd.conf 檔案的目錄。
    2. 輸入下列指令:
      - chgrp <群組名稱> httpd.conf 
      - chmod g+rw httpd.conf
      
  4. 更新 IBM 管理伺服器配置檔 admin.conf 的檔案許可權。
    1. 在指令提示下,切換到含有 admin.conf 檔案的目錄。
    2. 輸入下列指令:
      - chgrp <群組名稱> admin.conf 
      - chmod g+rw admin.conf
  5. 更新 IBM HTTP Server 所有其他配置檔的檔案許可權。
    1. 在指令提示下,切換到含有配置檔的目錄:
      • access.conf(如果使用的話)
      • srm.conf(如果使用的話)
    2. 輸入下列指令:
      - chgrp <groupname> <名稱>
      - chmod g+rw <檔案名稱>
      
  6. 更新管理伺服器的配置檔 admin.conf
    1. 切換至「管理伺服器」的 admin.conf 目錄。
    2. admin.conf 檔案中搜尋下列字行:
      - User nobody- Group nobody
      
    3. 請將這些行改為您建立的使用者 ID 及群組名稱:
      - User user ID- Group groupname
      
  7. user/HTTPServer/bin 目錄中輸入 ./adminctl start 來啟動管理伺服器。
  8. 按一下管理伺服器來定義要從管理伺服器管理的伺服器
  9. user/HTTPServer/bin 目錄中輸入 ./apachectl start 來啟動 IBM HTTP Server。
Solaris 使用者

在 Solaris 上:

  1. 啟動管理工具。
  2. 按一下瀏覽 > 群組
  3. 按一下編輯 > 新增
  4. 輸入群組名稱,如 admingrp。按一下確定
  5. 按一下瀏覽 > 使用者
  6. 按一下編輯 > 新增。請輸入使用者名稱(如 adminusr)和主群組名稱(如 admingrp)。
  7. 按一下確定
 
尋找相關資訊

     (返回最上面)