1. 程式人生 > >Mac apache php 和CGI 的配置

Mac apache php 和CGI 的配置

今天看了很多關於PHP和CGI 在Mac上apache 的配置的教程,按照起步驟操作了還是不行,最後通過嘗試配置成功了,下面我將為大家總結一些其配置流程,希望能幫到大家!!!!

# 1. Mac上Php的配置
# (1)檢視Apache的版本資訊 在終端上輸入apachectl -v

Server version: Apache/2.4.29 (Unix)

Server built:   Jan 17 2018 18:20:31

#(2)查詢apache 配置檔案
#在目錄/etc/apache2/下,開啟Finder,選擇"前往"-"前往資料夾",輸入"/etc/apache2/",

#找到其中的"httpd.conf"檔案,先拷貝一份出來到桌面

#(3)以文字編輯的形式開啟 查詢 #LoadModule php7_module libexec/apache2/libphp7.so 將其前面的‘#’去掉

# 查詢到 
“#
 #ServerName www.example.com:80

在其下面新增一行 ServerName localhost:80


#(4)自定義目錄配置
在"httpd.conf"檔案找到
DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">
並將其改為 (/Users/admin/Sites)自己定義的路徑可以根據自己的需要自行修改
DocumentRoot "/Users/admin/Sites"
<Directory "/Users/admin/Sites">

找到
#
Options FollowSymLinks Multiviews
MultiviewsMatch Any
改為
#
Options Indexes FollowSymLinks Multiviews

MultiviewsMatch Any

修改完畢後 將httpd.conf 替換/etc/apache2/路徑下的httpd.conf檔案

#(5)建立測試檔案 驗證 配置php是否成功
# 在終端上 輸入 cp /Library/WebServer/Documents/index.html.en /Users/admin/Sites/index.php 
# 用文字編輯模式開啟index.php,然後在後面新增<?php phpinfo(); ?>
# 啟動 apache  在終端上輸入 sudo apachectl -k restart

# 開啟瀏覽器  輸入 localhost  


# 2.配置CGI 
在上述操作中拷貝在桌面的httpd.conf 檔案上繼續修改  
找到#LoadModule cgi_module libexec/apache2/mod_cgi.so 去掉前面的‘#’


查詢<Directory "/Library/WebServer/CGI-Executables">
改為<Directory "/Users/admin/Sites/Cgi">  注意:自定義的路徑(/Users/admin/Sites/Cgi)必須在前面修改的根目錄下(DocumentRoot "/Users/admin/Sites")
<Directory "/Users/admin/Sites/Cgi">
    AllowOverride None
    Options ExecCGI
    Order deny,allow
    Allow from all
</Directory>


查詢 AddHandler cgi-script .cgi 
將其改為
AddHandler cgi-script .cgi .py .pl .sh


查詢 ScriptAliasMatch ^/cgi-bin/((?!(?i:webobjects)).*$) "/Library/WebServer/CGI-Executables/$1"
將其改為
ScriptAliasMatch ^/cgi-bin/((?!(?i:webobjects)).*$) "/Users/admin/Sites/Cgi/$1"
最後儲存替換替換/etc/apache2/路徑下的httpd.conf檔案
重新啟動 apache  在終端上輸入 sudo apachectl -k restart


在自定的工作目錄下(我的是/Users/admin/Sites/Cgi)下放入hello.py 檔案
檔案內容如下
#!/usr/bin/python
# -*- coding: UTF-8 -*-


print "Content-type:text/html"
print
print '<html>'
print '<head>'
print '<meta charset="utf-8">'
print '<title>Hello!</title>'
print '</head>'
print '<body>'
print '<h2>Hello test Word! </h2>'
print '</body>'
print '</html>'


開啟瀏覽器  輸入 localhost/cgi-bin/hello.py