博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
启动mac自带的apache服务器,并打开支持的php模块
阅读量:7113 次
发布时间:2019-06-28

本文共 2913 字,大约阅读时间需要 9 分钟。

hot3.png

1.Mavericks同以往的OSX一样自带了apache2.2.24和php5.4.17,但默认情况下没有开启,打开终端

sudo apachectl start

这时在浏览器中输入localhost应该就会出现apache标准的It Works!

2.下面开启php,修改apache配置文件

sudo vim /etc/apache2/httpd.conf

3.找到#LoadModule php5_module libexec/apache2/libphp5.so,去掉前面的#

4.修改apache配置

将引号中的目录修改为自己的目录

DocumentRoot "/Library/WebServer/Documents"

5.在自己的目录中创建文件index.php,写入

在浏览器中访问localhost,配置完成

开启配置虚拟目录

 

我使用的Mac OS X版本是10.8.2,Mac自带了Apache环境。

  1. 启动Apache
  2. 设置虚拟主机

 

启动Apache

打开“终端(terminal)”,输入 sudo apachectl -v,(可能需要输入机器秘密)。如下显示Apache的版本

 

接着输入 sudo apachectl start,这样Apache就启动了。打开Safari浏览器地址栏输入 “http://localhost”,可以看到内容为“It works!”的页面。其位于“/Library(资源库)/WebServer/Documents/”下,这就是Apache的默认根目录。

Apache的安装目录在:/etc/apache2/,etc默认是隐藏的。有三种方式查看:

  1. dock下右键Finder,选择"前往文件夹",输入"/etc"
  2. 在finder下----》前往---》前往文件夹,然后输入/etc
  3. 可以在terminal 输入 "open /etc"

 

设置虚拟主机

  1. 在终端运行“sudo vi /etc/apache2/httpd.conf”,打开Apche的配置文件
  2. 在httpd.conf中找到“#Include /private/etc/apache2/extra/httpd-vhosts.conf”,去掉前面的“”,保存并退出。
  3. 运行“sudo apachectl restart”,重启Apache后就开启了虚拟主机配置功能。
  4. 运行“sudo vi /etc/apache2/extra/httpd-vhosts.conf”,就打开了配置虚拟主机文件httpd-vhost.conf,配置虚拟主机了。需要注意的是该文件默认开启了两个作为例子的虚拟主机:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    <VirtualHost *:80>

        ServerAdmin webmaster@dummy-host.example.com

        DocumentRoot "/usr/docs/dummy-host.example.com"

        ServerName dummy-host.example.com

        ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"

        CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common

    </VirtualHost>

     

    <VirtualHost *:80>

        ServerAdmin webmaster@dummy-host2.example.com

        DocumentRoot "/usr/docs/dummy-host2.example.com"

        ServerName dummy-host2.example.com

        ErrorLog "/private/var/log/apache2/dummy-host2.example.com-error_log"

        CustomLog "/private/var/log/apache2/dummy-host2.example.com-access_log" common

    </VirtualHost>

    而实际上,这两个虚拟主机是不存在的,在没有配置任何其他虚拟主机时,可能会导致访问localhost时出现如下提示:

    ForbiddenYou don't have permission to access /index.php on this server

    最简单的办法就是在它们每行前面加上#,注释掉就好了,这样既能参考又不导致其他问题。

  5. 增加如下配置

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    <VirtualHost *:80>

        DocumentRoot "/Library/WebServer/Documents"

        ServerName localhost

        ErrorLog "/private/var/log/apache2/localhost-error_log"

        CustomLog "/private/var/log/apache2/localhost-access_log" common

    </VirtualHost>

     

    <VirtualHost *:80>

        DocumentRoot "/Users/snandy/work"

        ServerName mysites

        ErrorLog "/private/var/log/apache2/sites-error_log"

        CustomLog "/private/var/log/apache2/sites-access_log" common

        <Directory />

                    Options Indexes FollowSymLinks MultiViews

                    AllowOverride None

                    Order deny,allow

                    Allow from all

          </Directory>

    </VirtualHost>

    保存退出,并重启Apache。

  6. 运行“sudo vi /etc/hosts”,打开hosts配置文件,加入"127.0.0.1 mysites",这样就可以配置完成sites虚拟主机了,可以访问“http://mysites”了,在10.8之前Mac OS X版本其内容和“http://localhost/~[用户名]”完全一致。
  7. 注意,记录log的“ErrorLog "/private/var/log/apache2/sites-error_log"”也可以删掉,但记录日志其实是一个好习惯,在出现问题时可以帮助我们判断。如果保留这些log代码,一定log文件路径都是存在的,如果随便修改一个不存在的,会导致Apache无法服务而没有错误提示,这个比较恶心。

 

 

 

转载于:https://my.oschina.net/u/2528742/blog/675226

你可能感兴趣的文章
直播疑难杂症排查(9)— 拖动不准
查看>>
搭建基于用户密码认证的Open***
查看>>
精通MVC3摘译(3)-自定义路由系统
查看>>
LINUX下WEBLOGIC卸载
查看>>
Android第三十三期 - Dialog的应用
查看>>
[QTP] 描述性编程
查看>>
php 启动报错
查看>>
解决SecureCRT连接GNS3时SecureCRT标签窗口同名的问题
查看>>
AWS - 通过Snapshot 还原 EC2实例的一些问题
查看>>
小品Linux文件时间
查看>>
Windows10-AzureAD的支持,云的落地
查看>>
iOS开发那些事-移动平台架构设计
查看>>
【Hibernate框架开发之五】Hibernate对象的三种状态&Session常用方法
查看>>
澄清大数据存储——厂商篇
查看>>
MyBatis多参数传递之默认命名方式示例——MyBatis学习笔记之十二
查看>>
我的友情链接
查看>>
使用python的docker-py实现docker的api操作
查看>>
在非域环境中修改域用户密码的方法
查看>>
虚拟化基础架构Windows 2008篇之10-使用WDS安装Windows 7
查看>>
联想3850 X5服务器添加内存之后红屏
查看>>