Mac OS X Yosemite 10.10 配置 Apache+PHP 教程注意事项
刚更新到了 Mac OS X Yosemite 10.10,发现运行Apache出现了一些问题,修正一下!
教程基于 Mac OS X Mavericks 10.9.X,移步:Mac OS X Mavericks 配置 Apache+Mysql+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
Mac OS X Yosemite 10.10 配置 Apache+PHP 教程注意事项的更多相关文章
- MAC OS X Yosemite的PyQt4配置记录
MAC OS X Yosemite的PyQt4配置记录 声明: 1)本报告由博客园bitpeach撰写,版权所有,免费转载,请注明出处,并请勿作商业用途. 2)若本文档内有侵权文字或图片等内容,请联系 ...
- mac OS X Yosemite (10.10.5) 下 安装vim 7.4笔记
摘要 前言 需求与mac OS X 自带vim版本的冲突 默认Python解释器问题 并非Mac自带python的 homebrew 1. 前言 本文为自己作死折腾的问题记录 2. 需求与mac OS ...
- 启用Mac(OS X Yosemite)自带的apache
刚用Mac的时候配置过一次Mac自带的apache,主要是平常自己用mackdown写文档,装成html文件放到apache下方便自己和同事阅读.后来升级各种东西,估计是升级OS X导致apache不 ...
- 在Mac OS X Yosemite 10.10.3 中搭建第一个 ASP.NET 5 Web 项目
终于有时间在 Mac 上安装一下 ASP.NET 5,网上有许多教程,但是多数的时间比较早了,版本不是最新,搭着 Build 2015 的春风,我也实践一下 Mac OS X 上的 ASP.NET 5 ...
- Vmare12(虚拟机)安装Mac OS X Yosemite 10.10
需要预备的软件如下: OSX10.10的系统镜像,下载好之后将后缀.cdr改成.iso,下载来源如下: 链接:http://pan.baidu.com/s/1sj4ri5R 密码:y86w un ...
- 苹果 Mac OS X Yosemite 10.10 新功能特性总结 - 扁平化、主打跨设备的无缝连通性
苹果在2014.06.03凌晨的 WWDC 2014 大会上正式发布了最新的 OS X Yosemite 桌面操作系统和 iOS 8 移动系统.虽然整场发布会的重心都在软件上,并没有硬件亮相,但软件上 ...
- VMware 9.0.1安装Mac OS X Mountain Lion 10.8.2
原地址:http://zengwu3915.blog.163.com/blog/static/278348972013117114742496/ 所需软件1.VMware Workstation Bu ...
- VMware9虚拟机安装MAC OS X Mountain Lion 10.8.2详细图文教程
VMware虚拟机安装Mac OS X Mountain Lion 10.8.2所需文件:1.Vmware 9.01版下载:点击进入2.Vmware 9.01版汉化文件:点击进入3.VMware Wo ...
- Mac OS X Yosemite安装盘U盘制作
从App Store下载Mac OS X Yosemite安装程序,下载后的安装文件保存在应用程序(/Applications)文件夹中.请注意,此时一定不要直接启动该程序安装 OS X Yosemi ...
随机推荐
- CoffeeScript学习(1)——Quick Start
什么是CoffeeScript CoffeeScript 是一门编译到 JavaScript 的小巧语言. 在 Java 般笨拙的外表下, JavaScript 其实有着一颗华丽的心脏. Coffee ...
- HDU 3072 Intelligence System (强连通分量)
Intelligence System Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Othe ...
- c语言函数的可选性自变量
功能: 宏va_arg()用于给函数传递可变长度的参数列表. 首先,必须调用va_start() 传递有效的参数列表va_list和函数强制的第一个参数.第一个参数代表将要传递的参数的个数. 其次,调 ...
- python challenge第1关--NoteBook上的“乱码”
在 python challenge第0关中已经得到第1关的地址了: http://www.pythonchallenge.com/pc/def/map.html 一.观察地址栏和标签: What a ...
- UVaLive 7267 Mysterious Antiques in Sackler Museum (if-else,枚举)
题意:给定四个矩形,要求从中选出三个,能不能拼成一个矩形. 析:说到这个题,我还坑了队友一次,读题读错了,我直接看的样例,以为是四个能不能组成,然后我们三个就拼命想有什么简便方法,后来没办法了,直接暴 ...
- js正则验证手机号
var regp = /^(\+86|86|)1[3458][0-9]{9}$/; if(str==""){ var flag = checkstatus(obj,"&q ...
- Unity3D之Mecanim动画系统学习笔记(六):使用脚本控制动画
控制人物动画播放 这里我重新弄了一个简单的场景和新的Animator Controller来作为示例. 下面先看看Animator Controller的配置: 人物在站立状态只能进入走路,走路只能进 ...
- Lua学习笔记(二):基本语法
Lua学习指南:http://www.lua.org/manual/ 首先我们要明确的一点是:在Lua中,除了关键字外一切都是变量. Lua关键字 可以查看这个地址:http://www.lua.or ...
- 在数据库各种状态下查询DBID的五大类十种方法汇总
关于DBID: DBID是DataBase IDentifier的缩写,意思就是数据库的唯一标识符. 这个DBID在数据文件头和控制文件都是存在的,可以用于标示数据文件的归属. 对于不同数据库来说,D ...
- python dict{}和set([])
200 ? "200px" : this.width)!important;} --> 介绍 dict(dictionary),在其他语言中也称为map,使用键-值(key- ...