2011-05-16 67 views
5

我試圖讓我的Cygwin安裝程序上運行的Apache服務器在線遵循Java Ranch Cattle Drive教程(基本上,要學習使用MySQL後端的Java EE網頁開發。)Cygwin上的Apache Web開發

我使用了Cygwin安裝程序來安裝httpd(這是我安裝cygwin時使用的大多數其他開發工具),它表示安裝完成,但是當我運行'httpd'時,找不到命令。它也出現預期的安裝目錄(/ usr/local/apache ...)不存在。

有沒有人有使用此設置的經驗,如果有,您可以引導我完成啓動並運行服務器並獲取瀏覽器顯示服務器的默認頁面的初始步驟?

爲了保持答案的重點,我不想討論在Windows系統上運行Apache的缺點 - 這僅僅是爲了學習目的。提前致謝。

回答

5

查看Cygwin Package Listing for httpd,可以看到可執行文件安裝在/usr/sbin下。

所以,如果/usr/sbin是不是在你的PATH(它不是我的,默認情況下不無論如何),你的實際運行方式:

/usr/sbin/httpd 

而且順便說一句,如果你想列出文件安裝了某個軟件,您可以使用cygcheck

cygcheck -l httpd 
0

一些有關在Cygwin上運行的Apache:

http://httpd.apache.org/docs/1.3/cygwin.html

http://www.issociate.de/board/goto/895433/apache2_does_not_start_in_cygwin.html

http://www.cygwin.com/ml/cygwin-apps/2005-02/msg00085.html

就個人而言,我會建議安裝WAMPServer或其他WAMP棧和這樣做的。除了你需要通過Windows命令[net start,net stop]控制Apache,而不是Cygwin的控制之外,沒有什麼區別。

+0

使用WAMP,但知道這一點:從Cytwin中無法使用像RXVT這樣的tty-reliant終端訪問本機窗口生成的MySql。 http://stackoverflow.com/questions/5768019/command-line-mysql-from-xampp-in-cygwin – 2011-06-07 01:20:15

+0

+1使用WAMP ...來到這裏尋找Cygwin/Apache的幫助,並最終與WAMP和它的超級簡單。 – 2012-10-05 16:23:12

0

cygrunsrv -I阿帕奇-p/usr/sbin目錄/ httpd的-a 「-X」

這將解決這個問題。這假定你已經設置了cyrunsrv。如果你遺漏了-X,httpd失敗的原因是cygrunsrv是該進程與終端斷開連接,cygrunsrv認爲失敗。 httpd的-X選項是調試或終端模式。

1

我無法找到如何獲取Apache在Cygwin工作的任何詳細資料,所以這裏是如果有人有興趣:

  • 安裝您需要的httpd-* and httpd-mod_* packages。請注意,名爲「Apache」的軟件包已被棄用。你需要那些名爲「httpd」(實際上是Apache)。
  • 安裝cygrunsrv(通常這是默認的Cygwin軟件包)
  • 以管理員身份運行/usr/bin/cygserver-config。這是需要的,因爲Apache需要IPC服務器運行。
  • 打開services.msc,然後轉到CYGWIN Cygserver。右鍵單擊它並啓動它。如果你不這樣做,你可能會遇到像「AH00023:無法創建代理互斥」的錯誤。
  • 最後,通過運行/usr/sbin/apachectl restart

配置爲/etc/httpd/啓動Apache。