[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
加入底下的資訊
$chmod 755 -R /Users/alvin/Sites
儲存後重啟apache即可。
找php5_module,就可以找到,將前面的"#"拿掉再重新啟動apache即可。
若需要更動php的執行的memory及上傳的size,要更動php.ini的設定
下載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,就沒有需要了。
所以透過底下的指令開啟或關閉
另外我為了方便使用MySQL提供的指令,另外在profile上再加上PATH的設定,不過Mac看來不像Linux的系統,都有預設的.bash_profile,只好自己設定
之後重新進入終端機程式後,就可以直接使用mysqladmin。
<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
或看底下兩篇
沒有留言:
張貼留言