網頁

2014年1月14日 星期二

Mac學習筆記-Mac OS X 10.8.x later 配置Apache PHP MySQL

之前在Mac中都是用XAMPP,但老遇到有的沒的權限問題,我又懶得一直改,最後還是回到最基本的預設模式好了,都用command line最適合我....

[Apache]

OS X 10.10 更新
參考:
Get Apache, MySQL, PHP and phpMyAdmin working on OSX 10.10 Yosemite
Forbidden 403, You don’t have permission to access /~username/ on this server
----------------------------------------
sudo vim /etc/apache2/httpd.conf

將底下兩個的註解去掉
LoadModule userdir_module libexec/apache2/mod_userdir.so
Include /private/etc/apache2/extra/httpd-userdir.conf

若需要php,則也要去掉libphp5.so的註解
LoadModule php5_module libexec/apache2/libphp5.so


sudo vim /private/etc/apache2/extra/httpd-userdir.conf

將底下的註解去掉
Include /private/etc/apache2/users/*.conf

因為OS X 10.10用的是apache 2.4,所以
$sudo vim /private/etc/apache2/users/alvin.conf
<Directory "/Users/alvin/Sites">
    Options Indexes 
    AllowOverride All 
    Order allow,deny
    Allow from all
</Directory>

改成
<Directory "/Users/alvin/Sites">
    Options Indexes 
    AllowOverride All 
    Require all granted
</Directory>

必要時可以更動Apache Web User
$sudo vim /etc/apache2/httpd.conf

更動
User _www
Group _www

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

$which apachectl
/usr/sbin/apachectl


$sudo apachectl start / stop  (開啟/關閉)
$sudo apachectl -v                (可以看到apache的資訊)
Server version: Apache/2.2.24 (Unix)
Server built: Aug 24 2013 21:10:43


我有需要使用Users下的Sites,參考Apache2: UserDir Sites的討論串,是在httpd-userdir.conf設定,不過仔細看了apache2的目錄結構及httpd-userdir.conf的內容,User的個人客製設定是放在/private/etc/apache2/extra/users,以自己的使用名稱來命名,例如:我的使用者名稱alvin,就新建一個alvin.conf,所以動作如下。

$cd /private/etc/apache2/users
$sudo vim alvin.conf
加入底下的資訊
<Directory "/Users/alvin/Sites">
    Options Indexes
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>


$chmod 755 -R /Users/alvin/Sites

儲存後重啟apache即可。

[PHP 5]

預設是不使用PHP的module,所以執行
$sudo vim /private/etc/apache2/httpd.conf

php5_module,就可以找到,將前面的"#"拿掉再重新啟動apache即可。

若需要更動php的執行的memory及上傳的size,要更動php.ini的設定
$sudo vim /private/etc/php.ini
upload_max_filesize (上傳檔案size)
max_file_uploads (上傳檔案數量)
post_max_size (POST data最大size)
display_errors (Debug php時用)

[MySQL]

本來以為Mac有內建的,查找半天看來是沒有,只能下載MySQL安裝,我安裝的是5.7版,這邊可以看安裝文件MySQL 5.6 Reference Manual :: 2 Installing and Upgrading MySQL :: 2.4 Installing MySQL on Mac OS X

下載MySQL: Download MySQL Community Server。我下載的是Mac OS X 10.7 (x86, 64-bit), DMG Archive(mysql-5.6.15-osx10.7-x86_64.dmg),看起來只有支援到10.7的樣子。
下載完成後,點選它,會出現四個檔案,滑鼠雙擊其中mysql-5.6.15-osx10.7-x86_64.pkg,會出現“無法打開「mysql-5.6.15-osx10.7-x86_64.pkg」,因為它來自未識別的開發者。”的提示。這是10.8.x在安裝上的安全性檢查,直接右鍵點選後,選“打開”或“打開檔案的應用程式”再選“安裝程式.app”,一樣會出現警示,但這時按“打開”即可,再來就一直下一步吧。

我個人比較愛在使用時才開啟MySQL,所以這邊就沒安裝MySQLStartupItem.pkg(這邊有安裝說明:2.4.3. Installing the MySQL Startup Item),有需要的人再安裝。
我也也沒有裝MySQL.prefPane,這部分是讓MySQL可以在“系統設定偏好”中可以直接開啟,不過我想用的是command line,就沒有需要了。
所以透過底下的指令開啟或關閉

$sudo /usr/local/mysql/support-files/mysql.server start / stop

另外我為了方便使用MySQL提供的指令,另外在profile上再加上PATH的設定,不過Mac看來不像Linux的系統,都有預設的.bash_profile,只好自己設定

$sudo vim ~/.bash_profile
加入“export PATH="$PATH:/usr/local/mysql/bin"”


之後重新進入終端機程式後,就可以直接使用mysqladmin。

[PhpMyAdmin]

再來安裝PhpMyAdmin來用,在這邊下載。我是下載phpMyAdmin-4.1.4-all-languages.tar.bz2,先移到Sites下後,執行

$tar jxvf phpMyAdmin-4.1.4-all-languages.tar.bz2
$mv phpMyAdmin-4.1.4-all-languages phpmyadmin


將apache及mysql都啟動後,打開browser,打入localhost/~你的使用者名稱/phpmyadmin,就會看到畫面。

遭遇到OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程提到要2002 error的問題,本以為不會有也稍微查了下這是什麼,看起來是檔案權限及設定的問題,所以OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程提到用底下的

$sudo mkdir /var/mysql
$sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock


這樣他就可以正常使用到/var/mysql/mysql.sock

或看底下兩篇

沒有留言:

張貼留言