mac重新編譯php
『壹』 Mac配置php開發環境
啟動Apache
1
先介紹幾個命令
// 啟動Apache服務
sudo apachectl start
// 重啟Apache服務
sudo apachectl restart
// 停止Apache服務
sudo apachectl stop
// 查看Apache版本
httpd -v
Mac OS自帶Apache,只需要啟動Apache就行。
打開終端,輸入命令:sudo apachectl start
2
打開瀏覽器,在地址欄中輸入localhost,出現It Works字元串,就說明Apache已經成功啟動
3
在Macbook pro下,Apache的網站伺服器根目錄在/Library/WebServer/Documents路徑下
END
配置PHP
Mac OS 同樣自帶PHP,只需要在Apache的配置文件中添加Apache對PHP的支持就好了
在終端中輸入命令:
sudo vim /etc/apache2/httpd.conf
打開httpd.conf文件
去掉紅框標注內容的注釋符號
LoadMole php5_mole libexec/apache2/libphp5.so
然後保存
此處暫不介紹如何使用VIM編輯內容
重啟Apache服務
進入/Library/WebServer/Documents,
在該目錄下新建一個測試的PHP頁面,輸入命令:sudo vim test.php
在test.php中輸入以下代碼
<?php phpinfo(); ?>
在瀏覽器中打開頁面localhost/test.php,測試PHP是否可用
安裝Mysql
下載MySQL安裝包,如果是第一次安裝,建議下載DMG安裝包
打開DMG安裝包,雙擊安裝包里的PKG文件
一路點擊「繼續」,最後點擊「完成」
安裝完成後,打開「系統偏好設置」,可以看到多處一個MySQL圖標,
點擊「MySQL」圖標,在彈出的界面中,我們注意到MySQL已經啟動,並且是開機自啟動。
安裝好後,最好再創建能在終端中直接使用的MySQL快捷命令。
打開終端,輸入命令:
sudo vim /etc/bashrc
在bashrc中添加創建別名的命令:
alias mysql '/usr/local/mysql/bin/mysql'
alias mysqladmin '/usr/local/mysql/bin/mysqladmin'
編輯完後,需要使用「wq!」命令強制保存內容。
重啟終端,然後設置MySQL的root帳號,輸入命令
mysqladmin -u root password 123456
PS:
在執行上述命令時可能報錯:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'
如果碰到,可參考
先停止MySQL服務
打開「系統偏好設置」,選擇「MySQL」,在打開的對話框中點擊「Stop MySQL Server」
打開終端,輸入命令:sudo /usr/local/mysql/bin/mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
--skip-grant-tables:不啟動grant-tables(授權表),跳過許可權控制。
--skip-networking :跳過TCP/IP協議,只在本機訪問(這個選項不是必須的。可以不用)
保留開啟mysqld_safe的終端,新建一個終端,輸入命令:mysql
此時我們就可以直接登錄到MySQL服務了。
查詢MySQL的用戶信息,輸入SQL命令:
select host,user,authentication_string from user;
這一步驟熟悉的人可以跳過,在mysql 5.7以前的版本,密碼列的英文名是password,但是在5.7版本改成了authentication_string,這點是需要注意的。
我們只需要重置用戶名為root的密碼就可以,輸入SQL命令:
update user set authentication_string=PASSWORD('123456') where user='root' and host='localhost';
新設置用戶或更改密碼後需用flush privileges刷新MySQL的系統許可權相關表,否則會出現拒絕訪問,還有一種方法,就是重新啟動mysql伺服器,來使新設置生效
7
重啟MySQL服務,打開終端,輸入命令:
mysql -uroot -p
輸入剛設置好的密碼就能成功登錄
『貳』 如何重新編譯PHP使其支持mysqli
添加擴展的基本步驟:
1、進入PHP源代碼目錄:# cd /tmp/php-5.2.14/
2、再進入要添加的mysqli擴展源碼目錄:# cd ext/mysqli/
2、調用已經編譯好的php裡面的phpize:# /usr/local/php/bin/phpize
3、然後configure:# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/MySQL/bin/mysql_config
(/usr/local/mysql 為mysql的安裝目錄)
4、make && make install
5、編譯之後,自動把mysqli.so放到了默認的php擴展目錄下,我的為 /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/
(phpinfo可查看或者執行命令/usr/local/php/bin/php-config --extension-dir )
再修改php.ini 找到extension_dir 默認路徑為 extension_dir="./" 我修改後才啟動載入的
在下面添加extension = "mysqli.so" 保存即可
『叄』 如何在mac系統中搭建php伺服器
mac自帶繼承php環境的apache php 系統默認已經裝好,需要把他啟動
下載mysql官網有mac版本重新按linux的方法安裝了一遍
mac系統安裝php的方法(http://hounwang.com/lesson.html):
安裝PHP擴展要求Mac系統已經安裝了Xcode環境和命令行開發工具,如果還沒安裝,可以使用Shell安裝。
xcode-select --install
為了擴展管理方便,首先來安裝pecl擴展管理器。
cd /usr/lib/php
sudo php install-pear-nozlib.phar
安裝Redis、Memcache、Mongo等擴展。
sudo pecl install redis
sudo pecl install memcache
sudo pecl install mongo
sudo pecl install xdebug
將擴展配置添加的php.ini文件中:
extension=memcache.so
extension=mongo.so
extension=redis.so
zend_extension=xdebug.so
安裝xcache,從官網下載http://xcache.lighttpd.net/wiki/Release-3.2.0
解壓縮並安裝
tar xvf xcache-3.2.0.tar
cd xcache-3.2.0
phpize
。/configure
make
sudo make install
配置XCache(參考文獻:http://bbs.hounwang.com/)
[xcache]
xcache.size = 128M
xcache.var_size = 8M
xcache.var_count = 1
xcache.var_slots = 8K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.optimizer = Off
由於Mac自帶的PHP環境是不包括mcrypt擴展的,所以需要下載同版本的php源碼包,單獨編譯這個模塊載入。從官網的歸檔裡面找到php5.5.14的源碼包,下載:http://php.net/releases/
tar zxvf php-5.5.14.tar.gz
cd php-5.5.14/ext/mcrypt/
phpize。/configure
make
sudo make install
配置ext-mcrypt
extension=mcrypt.so
為了加速,還需要打開opcache。
zend_extension=opcache.so
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=0
; Determines if Zend OPCache is enabled for the CLI version of PHP
opcache.enable_cli=0
以上就是在MAC OS X系統中安裝PHP擴展的方法。
『肆』 mac中怎樣通過brew 安裝php的redis擴展
1、下載php-redis;
2、下載完後進行解壓,然後移動到系統自帶php的同級目錄;①
cp /Users/panxu/Desktop/phpredis /etc
3、進入phpredis;
cd /etc/phpredis
4、動態安裝php擴展模塊;②
/usr/bin/phpize
5、進行編譯;
./configure --with-php-config=/usr/bin/php-config
6、開始安裝;
make && make install
安裝完成,如果成功,會有如下提示:
Build complete.
Don't forget to run 'make test'.
Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20160303/
7、找到php.ini文件,並進行編輯;③
vi php.ini
在配置文件最後一行加入:
extension=redis.so
8、重啟php-fpm,完成安裝。④
步驟中的涉及到的資源和詳細解釋請參考:https://panxu.net/article/8400.html
『伍』 mac配置php-fpm,nginx運行多版本php
1、brew 安裝 php5.6 php5.7 nginx
2、配置php-conf
3、配置虛擬主機
安裝好brew
用brew 命令安裝,如果速度太慢或訪問不了,自行goole brew 換源
brew search php 查看可用的php版本
brew install [email protected] 安裝php5.6
brew install [email protected] 安裝php5.6
brew install nginx 安裝nginx
1、修改php5.6 php-fpm的埠為9056
cd usr/local/etc/php/5.6 # 到php5.6的目錄下
vi php-fpm.conf # 修改文件
listen = 127.0.0.1:9056 # 修改此埠
daemonize = yes # 修改為允許後台啟動php-fpm
2、修改php5.6 php-fpm的埠為9070
cd /usr/local/etc/php/7.1/php-fpm.d # 到php7.1的目錄下
vi www.conf # 修改埠
listen = 127.0.0.1:9056 # 修改此埠
vi php-fpm.conf # 修改文件
daemonize = yes # 修改為允許後台啟動php-fpm
3、啟動php-fpm
cd /usr/local/sbin # 到此目錄,建立兩個軟鏈接指向不同版本的php
切換到root用戶
./php-fpm56
./php-fpm71
啟動後可看到php-fpm的進程,則成功
ps-ef | grep php-fpm
cd /usr/local/etc/nginx/ # 到nginx的目錄下
復制默認的配置文件到server下(此目錄用來存虛擬主機文件)
這里我在server創建了這兩個
vi local.phpinfo56.com.conf # 修改本地域名和nginx代理到php-fpm埠,按照這種方法修改另一個
nginx # 啟動nginx
nginx -s reload # 修改配置文件,重新載入nginx
vi /etc /hosts # 修改host 加上映射關系
cd /usr /local/var/www # 在此目錄下建立一個index.php
echo "<?php phpinfo();" > index.php
在瀏覽器訪問可看到
『陸』 mac開發php使用什麼工具
MAC下開發PHP可以使用Zend Studio、PHPStorm、Sublime Text、Vim等主流工具。
Zend Studio
Zend Studio是Zend Technologies公司開發的PHP語言集成開發環境(IDE)。除了有強大的PHP開發支持外也支持HTML、js、CSS,但只對PHP語言提供調試支持。Studio5.5系列後,官方推出了基於Eclipse平台的Zend Studio,當前最新的11.0.1版本亦是構建於Eclipse平台。
PHPStorm
PhpStorm是一個輕量級且便捷的PHP IDE,其旨在提供用戶效率,可深刻理解用戶的編碼,提供智能代碼補全,快速導航以及即時錯誤檢查。
Sublime Text
是一個代碼編輯器(Sublime Text 2是收費軟體,但可以無限期試用),也是HTML和散文先進的文本編輯器。Sublime Text是由程序員Jon Skinner於2008年1月份所開發出來,它最初被設計為一個具有豐富擴展功能的Vim。Sublime Text具有漂亮的用戶界面和強大的功能,例如代碼縮略圖,Python的插件,代碼段等。還可自定義鍵綁定,菜單和工具欄。Sublime Text 的主要功能包括:拼寫檢查,書簽,完整的 Python API , Goto 功能,即時項目切換,多選擇,多窗口等等。Sublime Text 是一個跨平台的編輯器,同時支持Windows、Linux、Mac OS X等操作系統。2012年6月26日推出新版本的Sublime Text 2.0,與之前版本相比主要有較大的改善:支持 Retina 視網膜屏、快速跳到下一個、文本拖放、改善構建系統、CSS 自動完成和高亮設置等。
Vim
是一個類似於Vi的著名的功能強大、高度可定製的文本編輯器,在Vi的基礎上改進和增加了很多特性。[1] VIM是純粹的自由軟體。Vim普遍被推崇為類Vi編輯器中最好的一個,事實上真正的勁敵來自Emacs的不同變體。1999 年Emacs被選為Linuxworld文本編輯分類的優勝者,Vim屈居第二。但在2000年2月Vim贏得了Slashdot Beanie的最佳開放源代碼文本編輯器大獎,又將Emacs推至二線, 總的來看, Vim和Emacs同樣都是非常優秀的文本編輯器。[1]