簡體   English   中英

在 windows 上找到 Apache 服務器的路徑

[英]Locate the path of an Apache server on windows

對於我正在編寫的 Windows 腳本,我需要檢測機器是否安裝了 Apache 2.2,並找到應用程序路徑。

我想出的一種解決方案是 wget http://localhost:8080/server-info並從中解析根和配置文件。 如果服務器不使用端口 8080,這將失敗

另一種選擇是調用“sc qc Apache2.2”並解析返回的字符串。 如果服務器沒有安裝為服務,或者使用不同的名稱,這將失敗。

有沒有更好的方法來做到這一點?

如果他們沒有使用安裝程序安裝它,就沒有很多好的選擇。 如果他們使用 MSI/安裝程序,您可以檢查注冊表:

HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Apache\2.2.2\ServerRoot 
HKEY_CURRENT_USER\SOFTWARE\Apache Software Foundation\Apache\2.2.2\ServerRoot

您還可以查看正在運行的進程列表:

WMIC PROCESS get Caption,Commandline,Processid

尋找合適的 EXE。 如果由於某種原因您需要端口號,則使用 netstat 並搜索適當的端口。

此外,當您說“Windows 腳本”時,我假設您使用的是現代且功能強大的東西,例如Windows Scripting Host (我最喜歡的)或PowerShell 甚至不要打擾批處理文件。

我記得,Apache 編寫了一些注冊表項。 如果您知道如何從腳本中讀取它們,那可能會有所幫助。

桌面

無法在服務器上找到路徑。

嘗試將 index.php 放在幫助台安裝的站點 url 之后,或者如果您使用的是 apache,請確保啟用了 mode_rewrite 模塊並將文檔根目錄的 AllowOverride 指令設置為服務器配置文件中的 All/FileInfo。 [enter code here][1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM