zoukankan      html  css  js  c++  java
  • Mac OS X中配置Apache

    启动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,配置虚拟主机了。需要注意的是该文件默认开启了两个作为例子的虚拟主机:
      <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时出现如下提示:

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

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

    5. 增加如下配置
      <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无法服务而没有错误提示,这个比较恶心。
  • 相关阅读:
    使用 asp.net mvc和 jQuery UI 控件包
    ServiceStack.Redis 使用教程
    HTC T8878刷机手册
    Entity Framework CodeFirst 文章汇集
    2011年Mono发展历程
    日志管理实用程序LogExpert
    使用 NuGet 管理项目库
    WCF 4.0路由服务Routing Service
    精进不休 .NET 4.0 (1) asp.net 4.0 新特性之web.config的改进, ViewStateMode, ClientIDMode, EnablePersistedSelection, 控件的其它一些改进
    精进不休 .NET 4.0 (7) ADO.NET Entity Framework 4.0 新特性
  • 原文地址:https://www.cnblogs.com/chenshuo/p/3856114.html
Copyright © 2011-2022 走看看