linux安裝apache的糾結過程

來源:互聯網
上載者:User

  

  本以為linux下安裝apache是件很簡單的過程。三命令就可以搞定,jxvf解壓,make 編譯,make install 安裝就OK了。沒想到這個過程還頗費周折。可能和環境有關吧。先說一下我的環境。

---------------------------

linux :    cenos5.5  (驗證4.8也會碰到以下問題)

apache:  httpd-2.4.1.tar.bz2

---------------------------

[root@localhost apache]# tar jxvf httpd-2.4.1.tar.bz2      //解壓apache的壓縮包
[root@localhost apache]# cd httpd-2.4.1       //定位到httpd-2.4.1 檔案夾下
[root@localhost httpd-2.4.1]# ls       //查看顯示httpd-2.4.1 檔案夾下內容
[root@localhost httpd-2.4.1]#./configure --help | more      //查看安裝apache配置參數
[root@localhost httpd-2.4.1]#./configure  --prefix=/usr/local/apache  --enable-so      //  配置apache路徑 ,後面跟 --enable-so 參數表示讓apache核心裝載DSO

[root@localhost httpd-2.4.1]# make   //編譯apache 

出錯了!提示:

configure: error: APR not found. Please read the documentation 

在apache官網上可以下載到 apr-1.4.6.tar.gz 

解決apr not found問題>>>> 

APR和APR-UTIL的:http://apr.apache.org/download.cgi

   [root@localhost apache]# tar -zxf apr-1.4.6.tar.gz

   [root@localhost apache]# cd apr-1.4.6

   [root@localhost apr-1.4.6]# ./configure --prefix=/usr/local/apr

   [root@localhost apr-1.4.6]# make

   [root@localhost apr-1.4.6]# make install

 

安裝完成後,再來編譯apache 

  [root@localhost httpd-2.4.1]# make

又出錯了!提示:

configure: error: APR-util not found. Please read the documentation 

好吧!還是上面的apache官網地址再下載 apr-util-1.4.1.tar.gz 

解決APR-util not found問題>>>>

   [root@localhost apache]# tar -zxf  apr-util-1.4.1.tar.gz

[root@localhost apache]#  cd  apr-util-1.4.1

   [root@localhost apr-util-1.4.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

  [root@localhost apr-util-1.4.1]# make
  [root@localhost apr-util-1.4.1]# make install

 

再來編譯apache ,再次出錯!提示:

configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/ , 我X !linux 安裝軟體之間關聯性有時能讓人崩潰。

../configure仍提示APR-util not found,增加--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util後出現>>>>>

[root@localhost apache]# ./configure –help | grep pcre

--with-pcre=PATH        Use external PCRE library
:http://ftp.exim.llorien.org/pcre/

下載pcre-8.30.zip ,列表檔案較多,一般瀏覽器會有搜尋功能,你可ctrl+f 搜尋定位後下載。

[root@localhost apache]#unzip -o pcre-8.30.zip

[root@localhost apache]#cd pcre-8.30

[root@localhost pcre-8.30]#./configure --prefix=/usr/local/pcre

[root@localhost pcre-8.30]#make

[root@localhost pcre-8.30]#make install

編譯Apache

  [root@yahoo httpd-2.3.12-beta]# ./configure --prefix=/usr/local/apache2  --with-apr=/usr/local/apr  --with-apr-util=/usr/local/apr-util/   

  注意,這裡後面跟的參數,一定要與前面安裝apr 和apr-util的路徑一致。

 [root@localhost httpd-2.4.1]# make
 [root@localhost httpd-2.4.1]# make install

 這次編譯安裝應該不會再報任何錯誤了。哈哈!!

 

啟動apache

[root@localhost bin]# pwd

/usr/local/apache/bin

[root@localhost bin]# apachectl stop  停止

[root@localhost bin]# apachectl start  啟動

 

查看80連接埠是否被佔用

[root@localhost conf]#netstat -an | grep :80    

 

查看apache 啟動服務是否啟動

[root@localhost bin]# ps -aux | grep httpd

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ

root      2866  0.0  1.2  25164  9556 ?        Ss   22:45   0:00 /usr/sbin/httpd -k start

apache    2867  0.0  0.7  25300  5556 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2868  0.0  0.6  25300  5444 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2869  0.0  0.6  25300  5444 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2870  0.0  0.7  25300  5556 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2871  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2872  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2873  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

apache    2874  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

root      3141  0.0  0.0   4244   676 pts/1    R+   22:48   0:00 grep httpd

 

 

下面訪問一下apache預設頁是否能開啟。http://ip:80/index.html

又提示了錯誤:

 

難道是連接埠被佔用了?修改apache的設定檔

/usr/local/apache/conf/httpd.conf  設定檔

[root@localhost conf] vi httpd.conf

找到下面一行:

Listen 80   把80改成其它連接埠,如8080 、8800 只要沒被佔用就行。

找到下面一行:

ServerName www.example.com:80   改成本機ip加連接埠號碼,如:192.168.0.105:80

 

  連接埠改來改去,一直都報那個錯誤。由於之前沒有在linux下安裝apache的經驗,與是想找一下apache預設啟動並執行哪個頁面。於是,找到了,..../apache/htdocs/index.html 檔案(受tomcat的誤導)!其實不然,真正啟動並執行是 /var/www/html 目錄下的檔案

You don't have permission to access /index.html on this server 

真正的錯誤在這句提示上。因為我方位的檔案許可權不足夠。那給檔案加個許可權吧!

在/var/www/html 建立個檔案index.html

[root@localhost html]# chmod 766 index.html

Ok!再來方位apache ,頁面正常開啟了!過程很糾結,結局很美好!

 

-----------小結--------------

需要安裝的檔案:

apr-1.4.6

apr-util-1.4.1.tar.bz2

pcre-8.30.zip

 

/usr/local/apache     apache的安裝目錄

/usr/local/apache/conf/httpd.conf    設定檔

/usr/local/apache/bin/ apachectl   stop/start    停止/啟動程式

/var/www/html/    在這個檔案夾下建立可以訪問的頁面

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.