今天小编跟大家讲解下有关科技常识:Apache中Virtual Host虚拟主机配置及rewrite参数说明,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关科技常识:Apache中Virtual Host虚拟主机配置及rewrite参数说明的相关资料,希望小伙伴会喜欢也能够帮助大家。
Virtual Host配置过程
这里例子中我们的路径为这样DocumentRoot: /home/jb51 /sites/demo.aidi.net.cnServerName:demo.aidi.net.cn
1.进入apache虚拟主机设置目录
cd /etc/apache2/sites-available2.创建文件demo.aidi.net.cn
<VirtualHost *:80> ServerAdmin webmaster@localhost DirectoryIndex index.html index.php DocumentRoot /home/jb51 /sites/demo.aidi.net.cn ServerName demo.aidi.net.cn ServerAlias demo.aidi.net.cn <Directory"/home/jb51 /sites/demo.aidi.net.cn"> allow from all Options + Indexes </Directory> </VirtualHost>3.激活虚拟主机配置
sudo a2ensite demo.aidi.net.cn4.进入 /etc/apache2/sites-enabled/目录,可以查看所有激活的虚拟主机。可以用 sudo a2dissite demo.aidi.net.cn 注销
cd /etc/apache2/sites-enabled ls -lt显示
复制代码 代码如下:lrwxrwxrwx 1 root root 36 2013-04-05 17:29 demo.aidi.net.cn -> ../sites-available/demo.aidi.net.cn
5.重启apache服务
sudo /etc/init.d/apache2 restart6.ubuntu 设置host
vim /etc/hosts 127.0.0.1 demo.aidi.net.cn7.<Directory>设置开启.htaccess与显示目录结构列表
<Directory"/home/jb51 /demo.aidi.net.cn"> AllowOverride none AllowOverride all Options -Indexes FollowSymLinks </Directory>AllowOverride none 表示关闭.htaccess,如要开启可设置为AllowOverride allOptions -Indexes 表示关闭目录结构显示,如要开启可设置为 Options IndexesOptions FollowSymLinks 表示支持symbol link(软连接),如要关闭可设置为Options -FollowSymLinks
rewrite模块重要参数说明
开启rewrite:
sudo a2enmod rewrite停用rewrite:
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 模块时.
来源:爱蒂网