Mac OS X原 Apache 刪除後重裝方法

來源:互聯網
上載者:User

標籤:

網上一直有說不建議刪除OSX內建的Apache,我也是手賤了

不過既然已經刪掉了,要用就得裝回來吧,順帶也更新升級

好吧,開動


直接上brew安裝吧,省時省力,如果喜歡手動也建議先弄個brew

先弄Apache吧,當時百度了半天不知道在哪裡下載

後來才知道原來這貨本名叫 httpd (臥槽……)


第一步:

--------------------------------------------------手動操作控--------------------------------------------------

Apache httpd:

下載連結:http://httpd.apache.org/download.cgi


這是PHP的,要下舊版本如 5.3 之類點右邊的 Old archives

下載連結:http://php.net/downloads.php


httpd 的安裝,先終端跑這句,32位的系統 host 用 i386

sudo ./configure --prefix=/usr/local/apache2 --with-apr=/usr/sbin/apr --with-apr-util=/usr/sbin/apr-util --host=amd64

運氣好肯定沒 error,運氣不好就先用 brew 裝那個 apr 和 apr-util 吧,缺什麼就 brew install 什麼

然後就 make && make install 吧,完事後檔案都跑到 /usr/local/apache2裡面去了

開啟 conf 裡面的 httpd.conf 配置ServerRoot、Listen Port、Module等

-----------------------------------------------------------------懶人控-----------------------------------------------------------------

缺什麼就 brew install 什麼

brew install httpd24斷行符號等待

然後添加PHP擴充庫

brew tap homebrew/dupesbrew tap homebrew/phpbrew tap josegonzalez/homebrew-php

如果有問題就先 brew update 一次再添加擴充

最後安裝 php,需要 5.4 就寫 php54,5.5 就 php55,會自動下載當前最新的子版本

例如我安裝 php53 就會下載 5.3.29

brew install php53斷行符號等待


如果報錯提示什麼 apxs,Apache 沒有使用 --enable-so,/usr/share/httpd/build 什麼的

先建立一個httpd的軟連結到 /usr/share,然後cd 到 httpd 的目錄下,接著

ln -s ./ /usr/share/httpd
再次安裝錯誤就解決了

brew 安裝的 httpd 設定檔在 /usr/local/etc/apache2/2.x/ 裡

-----------------------------------------------------------------控尾行-----------------------------------------------------------------

別高興得太早,還有很多細節得處理

第二步:

我們先來編輯編輯 httpd.conf 檔案

這裡有幾個我們需要修改的地方

1. ServerRoot,值為httpd所在目錄,一定不能錯

2. Listen,連接埠號碼,我習慣80

3. LoadModule,如果是手動安裝的php自己cp那個so檔案到httpd裡面的libexec目錄下;如果是brew安裝的

應該會自動添加一條類似LoadModule php5_module /usr/local/Cellar/php53/5.3.29/libexec/apache2/libphp5.so的

4. 看到 User Daemon 和 Group Daemon,Daemon 改成 _www 吧

5. ServerAdmin,管理員郵箱,可改可不改

6. ServerName,如果前面加了#號一定去掉,改成 localhost 或者 127.0.0.1 

7. DocumentRoot,就是 Windows 下的 www 檔案夾,建議改到 /Users/使用者名稱/Sites,沒有Sites建立一個,

修改後下面的 <Directory 也要改成和 DocumentRoot 同樣值

改好了儲存,這個時侯我們還是訪問不了php的網頁,不信在Sites目錄裡寫個php檔案內容

<?phpphpinfo();?>
當然在開啟之前我們先終端跑一句:

sudo apachectl start

然後瀏覽器開啟localhost,是不是直接出來 php 代碼了 - -

好了,別被玩兒壞了,我們來解決這個問題

建立一個檔案吧,內容如分割線內:

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

#
# Additional PHP Apache directives,
# part of the entropy.ch PHP package for Mac OS X

# For more information, go to http://www.entropy.ch/software/macosx/php/
#
# 這裡的 php module 路徑改成自己的 so 檔案所在位置
LoadModule php5_module /usr/local/Cellar/php53/5.3.29/libexec/apache2/libphp5.so

# 這個就是解決 php 顯示代碼的
<IfModule mod_php5.c>

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

# 這個是設定允許預設訪問 index.php
    <IfModule mod_dir.c>
        DirectoryIndex index.html index.php
    </IfModule>
</IfModule>

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

儲存為 php.conf,手動安裝 httpd 的孩紙把檔案放到 /etc/ 下吧

brew 的孩紙放到 /usr/local/etc/php/5.x/ 裡

然後再次編輯 httpd.conf 檔案

把 LoadModule 裡的 php5_module 這一行注釋掉(前面加上#)

在檔案末尾添加一句:

Include /etc/php.conf 或

Include /usr/local/etc/php/5.x/php.conf

然後儲存


第三步:

開啟 php 目錄裡面的 php.ini 檔案,找到 [Date],下邊有一行 ;date.timezone =

改為 date.timezone = PRC 儲存

可解決 PHP Warning: phpinfo(): It is not safe to rely on the system 問題

Mac OS X原 Apache 刪除後重裝方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.