Mac OS X Yosemite 10.10 配置 Apache+PHP 教程笔记
首先启动 Apache,在终端里输入命令:
sudo apachectl start
查看 Apache 版本:
httpd -v
在Yosemite 10.10下,apache更新了
Server version: Apache/2.4.9 (Unix)
Server built: Sep 9 2014 14:48:20
接着测试,我就发现如下几点需要修正,如有其它疑问欢迎交流:
1、重新启用PHP,避免脚本直接显示在页面上
首先是 http://localhost/ 会将 PHP 代码直接显示在页面上,这里需要开启 php 支持:
sudo nano /etc/apache2/httpd.conf
按 ctrl+W 查找并去掉代码行前边的 #,之后重启 apache,如下:
LoadModule php5_module libexec/apache2/libphp5.so
2、开启支持用户级目录 http://localhost/~username/
用户级目录不能访问了,http://localhost/~yang/,提示:
Not Found
The requested URL /~ yang/ was not found on this server.
首先配置 yang.conf 运行命令:
sudo vi /etc/apache2/users/yang.conf
将以下代码保存在 conf 文件中,与 10.9.X 不一样:
<Directory "/Users/yang/Sites/">
Options Indexes MultiViews
AllowOverride None
Require all granted
</Directory>
记得给权限:
sudo chmod 755 /etc/apache2/users/yang.conf
这里还需要启用几个支持,运行:
sudo nano /etc/apache2/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
接着运行:
sudo nano /etc/apache2/extra/httpd-userdir.conf
开启:
Include /private/etc/apache2/users/*.conf
最后别忘记重启 Apache
sudo apachectl restart
再试一下,是不是成功啦!
http://localhost/~yang/
注:这里的 yang 是macbook用户名。
另,如果需要.htaccess支持伪静态rewirte,需要在 httpd.conf 开启代码行:
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
注:在 MAC OS 系统下 .htaccess 文件是不能直接新建的,而且是隐藏状态!
例如给wordpress添加伪静态,如下命令:
cd ~/Sites/Wordpress
touch .htaccess
vi .htaccess
添加如下内容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /~yang/Wordpress/
RewriteRule ^index/.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /~yang/Wordpress/index.php [L]
</IfModule>
记得给予权限及重启:
chmod 777 .htaccess
sudo apachectl restart
正文到此结束