mac 自带 Apache,在系统的私有目录 /private/etc 下
sudo apachectl start
启动apache,浏览器中输入 http://localhost,看到 “It works” 说明启动成功
apache默认虚拟主机(网站根目录)目录:/Library/WebServer/Documents/
修改 httpd.conf 前先备份 -> httpd.conf.bank
sudo vim /etc/apache2/httpd.conf
找到并去掉注释符号(#)
#LoadModule php5_module libexec/apache2/libphp5.so
复制一份 /Library/WebServer/Documents/index.html.en,命名为 info.php
<html>
<body>
phpinfo(); ?>
body>
html>
浏览器中输入 http://localhost/info.php
1. 配置 Apache 主配置文件 —— httpd.conf
设置监听网卡的IP地址和端口
#Listen 12.34.56.78:80 Listen 80
指定可以访问虚拟主机的IP地址和端口,其中IP地址必须是自己的网卡的IP地址
NameVirtualHost *:80 Include conf/vhosts.conf
2. 配置 Apache 虚拟主机 —— vhosts.conf
3. 配置本地 DNS 文件 —— hosts
设置自己的网站的根目录(虚拟主机)
sudo vim /etc/apache2/httpd.conf
找到并去掉注释符号(#)
#LoadModule authn_core_module libexec/apache2/mod_authn_core.so
#LoadModule authz_host_module libexec/apache2/mod_authz_host.so
#LoadModule authz_core_module libexec/apache2/mod_authz_core.so
#LoadModule dir_module libexec/apache2/mod_dir.so
#LoadModule userdir_module libexec/apache2/mod_userdir.so
#LoadModule alias_module libexec/apache2/mod_alias.so
找到并修改
DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">
为
DocumentRoot "/Users/sunshine/Workspace"
<Directory "/Users/sunshine/Workspace">
找到并去掉注释符号(#)
#Include /private/etc/apache2/extra/httpd-userdir.conf
#Include /private/etc/apache2/extra/httpd-vhosts.conf
#Include /private/etc/apache2/other/*.conf
创建虚拟主机
sudo vim /etc/apache2/extra/httpd-vhosts.conf
找到并去掉注释符号(#)
#Include /private/etc/apache2/users/*.conf
用#注释掉原有的两个VirtualHost并添加
DocumentRoot "/Users/sunshine/Workspace"
ServerName phpworkspace
ErrorLog "/private/var/log/apache2/phpworkspace-error_log"
CustomLog "/private/var/log/apache2/phpworkspace-access_log" common
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
Allow from all
Apache 配置说明:
1. Listen 命令
Listen 80 //监听本机的所有IP地址的80端口的请求 Listen 192.168.3.100 //监听本机的指定IP地址192.168.3.100的所有端口的访问 Listen 192.168.18.89:8080 //监听本机指定IP地址192.168.18.89的8080端口的访问
2.
设置网站根目录的外部的(客户端)访问权限
Options:指定服务器将启用哪些服务器特性。取值:none、All、Indexes None:禁用启用服务器特性 All:开启所有服务器特性 Indexes:如果首页文件不存在,则显示目录列表 Order:指定Allow(允许)和Deny(禁止)的执行顺序 Order Allow,Deny 先允许访问,再禁止IP访问 Order Deny,Allow 先禁止所有访问,再开启指定IP的访问 Deny:禁止哪些IP访问主机 Deny From All 禁止所有IP访问主机,包括自己 Deny From 192.168.18.76 192.168.18.74 禁止指定IP访问你的主机。禁止客户端的IP地址 Deny From 192.168.18 禁止网段介于192.168.18.0~192.168.18.255之间所有IP访问 Allow:允许哪些IP访问主机 Allow From All 允许所有IP访问主机,包括自己 Allow From 192.168.18.76 192.168.18.74 允许指定IP访问主机 Allow From 192.168.18 允许网段介于192.168.18.0~192.168.18.255之间所有IP访问
sudo vi /etc/hosts
添加
127.0.0.1 phpworkspace
将先前创建的info.php拷贝到网站的根目录,在浏览器中输入创建的主机名 http://phpworkspace/info.php
打开网站错误码403,检查根站点下有没有页面文件,若有文件,尝试设置默认页面,若还有问题,尝试修改目录权限
修改 httpd.conf
DirectoryIndex index.html index.php index.jsp index.htm
修改目录权限
sudo chmod -R 775 /Users/sunshine/Workspace