小知识:Apache中Virtual Host虚拟主机配置及rewrite参数说明

Virtual Host配置过程

这里例子中我们的路径为这样

DocumentRoot: /home/tuohang /sites/demo.tuohang.net

ServerName:demo.tuohang.net

1.进入apache虚拟主机设置目录

?
1
cd /etc/apache2/sites-available

2.创建文件demo.tuohang.net

?
1
2
3
4
5
6
7
8
9
10
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DirectoryIndex index.html index.php
DocumentRoot /home/tuohang /sites/demo.tuohang.net
ServerName demo.tuohang.net
ServerAlias demo.tuohang.net
<Directory “/home/tuohang /sites/demo.tuohang.net”>
allow from all Options + Indexes
</Directory>
</VirtualHost>

3.激活虚拟主机配置

?
1
sudo a2ensite demo.tuohang.net

4.进入 /etc/apache2/sites-enabled/目录,可以查看所有激活的虚拟主机。可以用 sudo a2dissite demo.tuohang.net 注销

?
1
2
cd /etc/apache2/sites-enabled
ls -lt

显示 

复制代码 代码如下:
lrwxrwxrwx 1 root root 36 2013-04-05 17:29 demo.tuohang.net -> ../sites-available/demo.tuohang.net 

5.重启apache服务

?
1
sudo /etc/init.d/apache2 restart

6.ubuntu 设置host

?
1
vim /etc/hosts
?
1
127.0.0.1 demo.tuohang.net

7.<Directory>设置开启.htaccess与显示目录结构列表

?
1
2
3
4
5
<Directory “/home/tuohang /demo.tuohang.net”>
AllowOverride none
AllowOverride all
Options -Indexes FollowSymLinks
</Directory>

AllowOverride none 表示关闭.htaccess,如要开启可设置为AllowOverride all

Options -Indexes 表示关闭目录结构显示,如要开启可设置为 Options Indexes

Options FollowSymLinks 表示支持symbol link(软连接),如要关闭可设置为Options -FollowSymLinks

rewrite模块重要参数说明

开启rewrite:

?
1
sudo a2enmod rewrite

停用rewrite:

?
1
sudo a2dismod rewrite

服务器环境变量:Apache提供给rewirte模块的环境变量大概分成5个类型.

第一部分: HTTP headers 部分参数

1.参数名称: HTTP_USER_AGENT

样例参考值: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8

说明: 相当于PHP中的服务器参数: $_SERVER[“HTTP_USER_AGENT”]

2.参数名称: HTTP_REFERER

样例参考值: http://www.test.cn/test.php

说明: 相当于PHP中的服务器参数: _SERVER[“HTTP_REFERER”]

3.参数名称: HTTP_COOKIE

样例参考值: ZDEDebuggerPresent=php,phtml,php3

说明: 相当于PHP中的服务器参数: $_SERVER[“HTTP_COOKIE”]

4.参数名称: HTTP_FORWARDED

样例参考值: 如果使用代理服务器的话会是代理服务器的IP地址, 本地不容易搭环境测试出值来.

说明: 相当于PHP中的服务器参数: $_SERVER[“HTTP_FORWARDED”]

5.参数名称: HTTP_HOST

样例参考值: www.test.com

说明: 相当于PHP中的服务器参数: $_SERVER[“HTTP_HOST”]

6.参数名称: HTTP_PROXY_CONNECTION

样例参考值: 网络连接代理方面的信息. 和HTTP_FORWARDED参数一样. 本地不容易搭环境测试出值来.

说明: PHP中貌似未提供这样的服务器信息值. 如果又的话可能等值于: $_SERVER[“HTTP_PROXY_CONNECTION”]

7.参数名称: HTTP_ACCEPT

样例参考值: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

说明: 相当于PHP中的服务器参数: $_SERVER[“HTTP_ACCEPT”]

第二部分: server internals 部分参数

1.参数名称: DOCUMENT_ROOT

样例参考值: C:/webRoot/t

说明: 相当于PHP中的服务器参数: $_SERVER[“DOCUMENT_ROOT”]

2.参数名称: SERVER_ADMIN

样例参考值: youemailaddress@gmail.com

说明: 相当于PHP中的服务器参数: $_SERVER[“SERVER_ADMIN”]

3.参数名称: SERVER_NAME

样例参考值: www.test.com

说明: 相当于PHP中的服务器参数: $_SERVER[“SERVER_NAME”]

4.参数名称: SERVER_ADDR

样例参考值: 127.0.0.1

说明: 相当于PHP中的服务器参数: $_SERVER[“SERVER_ADDR”]

5.参数名称: SERVER_PORT

样例参考值: 80

说明: 相当于PHP中的服务器参数: $_SERVER[“SERVER_PORT”]

6.参数名称: SERVER_PROTOCOL

样例参考值: HTTP/1.1

说明: 相当于PHP中的服务器参数: $_SERVER[“SERVER_PROTOCOL”]

7.参数名称: SERVER_SOFTWARE

样例参考值: Apache/2.2.11 (Win32) PHP/5.2.9-1

说明: 相当于PHP中的服务器参数: $_SERVER[“SERVER_SOFTWARE”]

第三部分: connection & request 部分参数

1.参数名称: REMOTE_ADDR

样例参考值: 127.0.0.1 正在浏览当前页面用户的 IP 地址。

说明: 相当于PHP中的服务器参数: $_SERVER[“REMOTE_ADDR”]

2.参数名称: REMOTE_HOST

样例参考值: 127.0.0.1 正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR

说明: 相当于PHP中的服务器参数: $_SERVER[“REMOTE_HOST”]

3.参数名称: REMOTE_PORT

样例参考值: 2574 (变化的值)用户连接到服务器时所使用的端口

说明: 相当于PHP中的服务器参数: $_SERVER[“REMOTE_PORT”]

4.参数名称: REMOTE_USER

样例参考值: 空

说明: PHP 好像未提供相关的$_SERVER值.

5.参数名称: REMOTE_IDENT

样例参考值: 空

说明: PHP 好像未提供相关的$_SERVER值.

6.参数名称: REQUEST_METHOD

样例参考值: GET

说明: 相当于PHP中的服务器参数: $_SERVER[“REQUEST_METHOD”]

7.参数名称: SCRIPT_FILENAME

样例参考值: C:/webRoot/t/share77.html

说明: 相当于PHP中的服务器参数: $_SERVER[“SCRIPT_FILENAME”]

8.参数名称: PATH_INFO

样例参考值: 空

说明: 相当于PHP中的服务器参数: $_REQUEST[“PATH_INFO”]

9.参数名称: QUERY_STRING

样例参考值: a=b&c=d&e=f

说明: 相当于PHP中的服务器参数: $_SERVER[“QUERY_STRING”]

10.参数名称: AUTH_TYPE

样例参考值: 空 当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个是认证的类型

说明: 相当于PHP中的服务器参数: $_SERVER[“AUTH_TYPE”]

第四部分: date and time 部分参数

1.参数名称: TIME_YEAR

样例参考值: 2009

说明: 服务器获取当前的年份值

2.参数名称: TIME_MON

样例参考值: 04

说明: 服务器获取当前的月份值

3.参数名称: TIME_DAY

样例参考值: 22

说明: 服务器获取当前的日值

4.参数名称: TIME_HOUR

样例参考值: 16

说明: 服务器获取当前时间的小时

5.参数名称: TIME_MIN

样例参考值: 26

说明: 服务器获取当前时间的分钟

6.参数名称: TIME_SEC

样例参考值: 34

说明: 服务器获取当前时间的秒

7.参数名称: TIME_WDAY

样例参考值: 3

说明: 服务器获取当天是星期几, 从星期日-星期六, 数字从 0-6

8.参数名称: TIME

样例参考值: 20090422162634

说明: 服务器获取当前的时间, 格式为: 年月日时分秒

第五部分: specials 部分参数

1.参数名称: API_VERSION

样例参考值: 20051115:21

说明: apache 的 API 版本信息.

2.参数名称: THE_REQUEST

样例参考值: GET /share77.html HTTP/1.1

说明: 浏览器发给服务器的请求值. 不包括其他的头信息.

3.参数名称: REQUEST_URI

样例参考值: /share77.html

说明: 浏览器请求的资源信息.

4.参数名称: REQUEST_FILENAME

样例参考值: C:/webRoot/t/share77.html

说明: 被请求的资源的在磁盘的物理地址.

5.参数名称: IS_SUBREQ

样例参考值: false

说明: 如果是 sub-request 则显示为 true, 否则为 false.

6.参数名称: HTTPS

样例参考值: off

说明: 如果连接使用 SSL/TLS 模式, 则值为on , 否则值为off, 这个参数比较安全, 即使未载入 mod_ssl 模块时.
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:Apache服务器中.htaccess文件的实用配置示例集锦

2023-3-16 12:30:04

建站知识

小知识:varnish 配置文件分享(sens杨 注释)

2023-3-16 12:44:29

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索