用慣了在Windows上一個appserv或phpStudy壓縮包搞定,要在MAC OSX 10.10上搗騰一個PHP開發環境還不大習慣。但自己親自配一下環境還是有所收獲的。眾所周知OSX上自帶了apache和php,所以這兩個搞起來還比較順利。裝MySQL的最新版5.6.22版頗費周折,本文詳細記錄之。
apache的配置
apache已經自帶了,只需如下三個命令就可以了。
開啟apache服務 sudo apachectl start
停止apache服務 sudo apachectl stop
重啟服務 sudo apachectl restart
查看版本 httpd -v
手動打開apache服務后,在瀏覽器輸入localhost,將看到如下:
程序的根目錄在/Library/WebServer/Documents/ 下,這個It works 就是里面的info.php打印出來的。下面介紹如何將apache的這個默認目錄更改到用戶目錄下。
1,在自己的用戶目錄下新建一個Sites文件夾,我的用戶目錄為linuxidc
2,進到cd /etc/apache2/users/目錄下,sudo vim username.conf,內容為:
<Directory "/Users/linuxidc/Sites/"> AllowOverride All Options Indexes MultiViews FollowSymLinks Require all granted </Directory>
- 1
上面第一行里的linuxidc就是用戶目錄。然后將該文件權限改為644:
sudo chmod 644 username.conf
3,進到/etc/apache2/目錄,sudo vim httpd.conf 將下面三句話的注釋去掉:
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
前兩句應該已經不帶注釋了,把第三句注釋放開。
然后找到Include /private/etc/apache2/extra/httpd-userdir.conf 注釋放開。
PS:在vim下只要切換到命令模式,然后輸入/”words you need find”就能快速找到需要查找的詞。
4,進到/etc/apache2/extra/目錄,將Include /private/etc/apache2/users/*.conf 這句話放開注釋。
然后終端輸入:sudo apachectl restart 重啟apache,瀏覽器輸入: loacal/~linuxidc/ 就能看到效果了。(linuxidc是我的用戶目錄的名字,后面不用再加/Sites)
經過以上步驟apache就搞好了。
PHP配置
PHP的配置非常簡單,就一個事,進到/etc/apache2/目錄,編輯httpd.conf,找到LoadModule php5_module libexec/apache2/libphp5.so將其放開注釋就行了。
然后sudo apachectl restart 重啟,在用戶目錄的Sites文件夾下,新建一個index.php,里面echo phpinfo() ,就可以看到效果了:
安裝MySQL5.6.22
這個版本是最新的MySQL,安裝方法跟5.5的略有不同。在官網下載mysql-5.6.22-osx10.9-x86_64.dmg,下面是安裝方法:
1,雙擊安裝的時候,不要勾選StartUp Item這一項:
如此安裝完畢后,在設置---MySQL手動開啟MySQL服務。
我這里已經打開了MySQL服務。下面要將其設置為開機自動啟動。
2,默認狀態下,我們用mysql的命令每次都要輸入全路徑,如sudo /usr/local/mysql/support-files/mysql.server start 開啟mysql服務,/usr/local/mysql/bin/mysql -v查看mysql版本,得先把bin目錄配到環境變量里。切換到用戶根目錄 ,vim .bash_profile,輸入:
export PATH=”/usr/local/mysql/bin:$PATH”
保存后,source .bash_profile使環境變量生效。接着就可以直接在終端里輸入mysql命令了。
最后,通過mysqladmin -u root password ‘yourpasswordhere’ 給mysql的root用戶設置密碼。單引號里的內容就是要設的密碼。
3,修復socket error的問題。有一個負責mysql 服務器 客戶端通訊的socket文件,mysql的這個版本將其放在/tmp目錄,但是OSX卻默認的找 /var/mysql 這個目錄,所以要建個軟鏈接。新建目錄 /var/mysql, 然后sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock 就ok了。
4,讓mysql開機自動啟動。
sudo vim sudo nano /Library/LaunchDaemons/com.mysql.mysql.plist,里面內容輸入:
KeepAlive
Label
com.mysql.mysqld
ProgramArguments
/usr/local/mysql/bin/mysqld_safe
–user=mysql
保存后,修改權限:
sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysql.plist
sudo chmod 644 /Library/LaunchDaemons/com.mysql.mysql.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist
這樣mysql就ok了!
phpMyAdmin的安裝
從http://www.phpmyadmin.net/home_page/downloads.php 下載,我下的是phpMyAdmin-4.4.2-all-languages.zip這個版本,將其解壓。然后最外層文件夾名字修改為phpmyadmin,進到~/Sites/phpmyadmin這個目錄,新建文件夾:mkdir config 修改讀寫權限:chmod o+w config
然后瀏覽器輸入:http://localhost/~linuxidc/phpmyadmin/setup/ (注意 中間的linuxidc 換成自己的用戶名稱)
點擊 “新建服務器“,我上面已經新建好了,然后在這個界面:
密碼處輸入mysql的root用戶密碼。然后點擊“應用“,這樣config文件夾下就生成了config.inc.php,將該文件拷貝到phpmyadmin的根目錄下。然后刪除整個config文件夾。輸入http://localhost/~linuxidc/phpmyadmin/ 就可以看到登陸phpmyadmin的界面了。 如此,phpMyAdmin搞定。
讀寫權限和分組問題
最后遺留一個讀寫權限和歸屬問題,如果本地開發測試的話,這個步驟可以忽略。如果想讓自己的mac切實作為一台服務器,那么這個還要設置下的。這個步驟等同於在布阿里雲代碼的時候,讓public_html文件夾的所有東西可寫,且歸屬於www一個意思。假設Sites文件夾下有個自己的項目:testsite
sudo chmod -R a+w ~/Sites/testsite 設置所有人都可以讀寫