通过vhost.map修改apache多个二级域名

langchain入门学习笔记 langchain快速入门 阅读详情

简单的添加:
<VirtualHost myhost>
    DocumentRoot usr/local/www/myhost
    ServerName   myhost
< /VirtualHost>

在最后加上
NameVirtualHost *
< VirtualHost *>
    rewriteengine on
    rewritecond %{HTTP_HOST} [^.]+/.alibaba/.uni/.cc$
    rewriterule ^(.+) %{HTTP_HOST}$1 [C]
    rewriterule ([^.]+)/.alibaba/.uni/.cc(.*) /$1$2
    ServerAdmin webmaster@XXX.COM
    DocumentRoot /www
    ServerName alibaba.uni.cc
    ErrorLog logs/alibaba.uni.cc-error_log
    LogLevel warn
    #LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent} "" combined
    #LogFormat "%h %l %u %t "%r" %>s %b" common
    #LogFormat "%{Referer}i -> %U" referer
    #LogFormat "%{User-agent}i" agent 
    ##CustomLog logs/log/httpd-access.log common
    ##CustomLog logs/log/httpd-referer.log referer
    ##CustomLog logs/log/httpd-agent.log agent
    #CustomLog logs/httpd-access.log combined
    CustomLog logs/alibaba.uni.cc-access_log common
< /VirtualHost>
将http://username.alibaba.uni.cc对于username的主页请求转换为对http://alibaba.uni.cc/username的请求
---- 对于HTTP/1.1的请求包括一个Host: HTTP头,我们能用下面的规则集重写 http://username.alibaba.uni.cc/anypath到/home/username/anypath。
注: “rewritecond”表明是条件重写规则,当满足后面定义的条件后才会应用下面的重写规则,“rewritecond”有各种变量,请查阅相关文档。
其实是用到了APACHE的重写规则,大家可以看
http://alibaba.uni.cc
你可以打开里面的目录像这样打开测试一下
http://skyspy.alibaba.uni.cc

Linux下操作
首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com
其次,在 httpd.conf 中打开 mod_rewrite
之后,在 httpd.conf 的最后,添加以下内容:
RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap vhost txt:/usr/local/etc/apache/vhost.map
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1
其中的 /usr/local/etc/apache 是你的 apache 服务器配置文件所在路径,根据实际情况更改。
然后,在这个所在路径的目录下创建一个文件: vhost.map
内容为:
www.domain.com /usr/local/www/data-dist/domain
bbs.domain.com /usr/local/www/data-dist/bbs
anyname.domain.com /usr/local/www/data-dist/anyname
以上部分都是:" 域名+空格+绝对路径" 的形式。
最后,在你的网站根目录 /usr/local/www/data-dist 下,创建对应目录:
domain , bbs , anyname 等等,理论上可以无限。
这样,通过浏览器,访问 www.domain.com 时,实际上访问的就是 /usr/local/www/data-dist/domain目录下的文件。同理,访问 bbs.domain.com 实际上访问的就是 /usr/local/www/data-dist/bbs 目录下的文件。而且,你可以
随时更改 vhost.map 来增加、删除、修改你的二级域名和所指向的实际路径,不用重启 apache。

接下来windows下的操作:
1、域名物理地址文件
C:/AppServ/Apache2.2/conf/vhost.map
book.tiyan.com C:/AppServ/www/book
xxx.tiyan.com   C:/AppServ/www/xxx
2、开启LoadModule rewrite_module modules/mod_rewrite.so
3、域名泛解析
4、以下配置添加到httpd.conf的末尾或VirtualHost中
RewriteLog         logs/rewrite.log
RewriteLogLevel    0
RewriteEngine      on
RewriteMap         lowercase int:tolower
RewriteMap         vhost txt:C:/AppServ/Apache2.2/conf/vhost.map
RewriteCond        ${lowercase:%{HTTP_HOST}|NONE} ^(.+)$
RewriteCond        ${vhost:%1} ^(C:/.*)$
RewriteRule        ^/(.*)$ %1/$1 [E=VHOST:${lowercase:%{HTTP_HOST}}]
要点:
a.正则^(.+)$ 要和vhost.map的第一部分匹配,在这个例子中^(.+)$是可以匹配book.tiyan.com的
b.正则^(C:/.*)$要和vhost.map的第二部分匹配,在这个例子中^(C:/.*)$是可以匹配C:/AppServ/www/book的
c.RewriteCond        ${vhost:%1} ^(C:/.*)$
把盘符C:加入到正则中,如果您的web文件不是放在C盘而是E盘,要把C:改为E:
随时更改 vhost.map 来增加、删除、修改你的域名和所指向的实际路径,不用重启 Apache

VirtualHost  overlaps with VirtualHost , the first has precedence, perhaps you need a NameVirtualHost directive

Solution:
Add the following line in your /etc/apache2/http.conf
NameVirtualHost *:80
Create a virtualhost directive for your virtual domain. You can add it /etc/apache2/http.conf file or you can create a separate file in /etc/apache2/sites-available directory
< VirtualHost *:80>
ServerName www.domain.com
ServerAdmin admin@domain.com
ServerAlias domain.com
DocumentRoot /home/domain.com
ErrorLog /var/log/apache2/domain.com-error.log
CustomLog /var/log/apache2/domain.com-access.log
< /VirtualHost>
If you want to use /etc/apache2/sites-enabled, make sure that the following line is in /etc/apache2/apache.conf
Include /etc/apache2/sites-enabled/[^.#]*

Your VirtualHost directives are slightly incorrect.
First of all, before you assign several domains to the same IP, you need to add a "NameVirtualHost" parameter for that IP Address. Here's an example:
NameVirtualHost *:80
Next, you need to update your VirtualHost tags to MATCH the "NameVirtualHost" parameter, like so:
< VirtualHost *:80>
  DocumentRoot "/var/www/webdav/block"
  ServerName block.dev.pd
  ServerAlias block.dev.pd
  <Directory "/var/www/webdav/block">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
  </Directory>
< /VirtualHost>

 

 

转载:http://blog.csdn.net/rogues/article/details/6301659

Mac 下 Apache 虚拟主机(VHost)设置与 PHP 为了实现多个网站的同时运行,您可以配置虚拟主机(VHost)。本文将向您介绍如何在 Mac 系统上进行 Apache 虚拟主机设置,并确保 PHP 能够正常运行。通过配置不同的虚拟主机,您可以同时运行多个 PHP 网站。现在,您已经完成了 Apache 虚拟主机和 hosts 文件的设置。现在,您可以打开您的 Web 浏览器,并尝试访问您配置的虚拟主机。文件中,您可以定义每个虚拟主机的设置。如果一切设置正确,您应该能够看到您的网站在浏览器中显示出来。可以是您选择的虚拟主机名称,如。在上述示例中,您需要将。 阅读详情

相关推荐

基于STM32设计的指针式电子钟与万年历(升级版)

这是基于STM32设计的一个指针式电子钟+万年历小项目,采用3.5寸的LCD屏显示时钟,日历、温度、天气,支持触摸屏调整设置时间,设置闹钟,查看日历等等。整体项目主要是技术点就是LCD屏的图形绘制。比如: 时钟的时针绘制、分针、秒针、表盘、日历绘制等等。

1万+

虚拟主机配置教程,包括apache mod_vhost_alias模块

NULL 博文链接:https://zhengdl126.iteye.com/blog/417281

virtualhost:Apache 配置的示例 VHost 文件

Silex_VHost 这是一个示例 Apache 虚拟主机定义文件。 它包含使路由按预期工作所需的重写规则。 如果您想根据存储应用程序文件的位置重新使用此文件,则可能需要更改路径。 我的通常在: /home/#username#/public_html/#my_project_folder#/web

Apache VHost

Apache VHost

Rogues的专栏 5130

Apache配置vhost支持多站点

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33691700的博客 3427

Apache】 配置 (http协议的) vhost

前言 Apache 2.4.39 phpStudy 8.1.1.2 tomcat 9.0 的项目 准备 启用代理模块。 在 httpd.conf 配置文件中加载 Http 反向代理用到的模块 LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so LoadModule proxy_http_module modules/mod_proxy_http.so 确

sayyy的专栏 1374

Apache服务器虚拟主机(vhost)常见配置

本文涵盖了Apache服务器中常用的vhost配置方法,由于时间关系不在文中进行讲解,仅供参考。注意:如果虚拟主机的端口不是默认的80,则比如添加额外的Listen &lt;端口号&gt;指令。此处以Apache2.4为例:Listen 6001Listen 6003#NameVirtualHost *:6001#NameVirtualHost *:6003&lt;VirtualHost *:60...

weixin_33725126的博客 597

配置Apache服务器的二级域名支持

代码首先,你的拥有一个有泛域名解析的顶级域名,例如:domain.com其次,在httpd.conf中打开mod_rewrite之后,在httpd.conf的最后,添加以下内容:RewriteEngineonRewriteMaplowercaseint:tolowerRewriteMapvhosttxt:/usr/local/etc/apache/vhost.mapR...

weixin_30737433的博客 149

php 部署 域名解析,PHP&Apache配置多个域名解析的配置方法

PHP&Apache配置多个域名解析的配置方法apache是最流行的http服务器软件之一,其以快速、可靠(稳定)而著称,并且可通过简单的api扩展,perl/python解释器可被编译到服务器中,完全免费,并且源代码全部开放。如果有自己的服务器或者vps, 并且不想为了方便而购买昂贵的控制面板的话,那自己动手配置apache就成了一门必修课了。下面简单的介绍了如何通过设置apache...

weixin_39552304的博客 428

apache通过httpd.conf绑定多个域名及二级域名

以下是转载内容,后面有补充 Apache是最流行的HTTP服务器软件之一,其以快速、可靠(稳定)而著称,并且可通过简单的API扩展,Perl/Python解释器可被编译到服务器中,完全免费,并且源代码全部开放。如果有自己的服务器或者VPS,并且不想为了方便而购买昂贵的控制面板的话,那自己动手配置Apache就成了一门必修课了。下面简单的介绍了如何通过设置Apache的http.conf文

物有所不足 智有所不明 用君之心 行君之意 1万+

apache绑定二级域名多个域名windows下设定方法

apache绑定二级域名多个域名windows下设定方法 一.绑定二级域名   httpd.conf 中需要打开mod_rewrite功 在httpd.conf 的最后,添加以下内容: RewriteEngine on  RewriteMap lowercase int:tolower  RewriteMap vhost txt:/usr/local/etc/httpd/vhost

vip_linux的专栏 1445

Apache中通过配置http.conf绑定多个域名以及二级域名的方法

Apache是最流行的HTTP服务器软件之一,其以快速、可靠(稳定)而著称,并且可通过简单的API扩展,Perl/Python解释器可被编译到服务器中,完全免费,并且源代码全部开放。如果有自己的服务器或者VPS,并且不想为了方便而购买昂贵的控制面板的话,那自己动手配置Apache就成了一门必修课了。下面简单的介绍了如何通过设置Apache的http.conf文件,进行多个域名以及其相关的二级域名

37度2 1527

Apache二级域名配置方法

下面这个Apache二级域名配置方法是今天在其它BBS看到的,以前我配置是都是配置每个为一个虚拟目录今天正在想如何写没想到找到了。 Apache二级域名实现方法介绍 首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com  其次,在 httpd.conf 中打开 mod_rewrite  之后,在 httpd.conf 的最后,添加以下内容:RewriteEngine onRe...

huidaoli 1551

Apache服务器二级域名的完美实现

Apache服务器二级域名的完美实现 首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com 其次,在 httpd.conf 中打开 mod_rewrite 之后,在 httpd.conf 的最后,添加以下内容: RewriteEngine on RewriteMap lowercase int:tolower RewriteMap vhost txt:/usr/local/etc...

weixin_44400506的博客 372

配置Apache二级域名

首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com其次,在 httpd.conf 中打开 mod_rewrite之后,在 httpd.conf 的最后,添加以下内容: RewriteEngine on RewriteMap lowercase int:tolower RewriteMap vhost txt:/usr/local/etc/apache(Unix平台

wengyupeng 蜗牛一步一步向前。。。 5685

Apache二级域名实现

Apache二级域名实现   首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com   其次,在 httpd.conf 中打开 mod_rewrite   之后,在 httpd.conf 的最后,添加以下内容: RewriteEngine on RewriteMap lowercase int:tolower RewriteMap vhost txt:/usr/local

PainsOnline的专栏 2661

apache服务器快速配置二级域名方法

  首先,你必须拥有一个顶级域名;其次,在httpd.conf中打开mod_rewrite;之后,修改httpd.conf;最后,在你的网站根目录/usr/local/www/data-dist下,创建对应目录。更改vhost.map来增加、删除、修改你的二级域名和所指向的实际路径,不用重启apache。       Apache中快速配置二级域名其实并不复杂,大家根据以下步骤做就成了。   ...

抽刀断水 163

linux 二级域名设置

首先,你的拥有一个有泛域名解析的顶级域名,例如: domain.com   其次,在 httpd.conf 中打开 mod_rewrite   之后,在 httpd.conf 的最后,添加以下内容:   RewriteEngine on   RewriteMap lowercase int:tolower   RewriteMap vhost txt:/usr/local/etc/apa

疯狂的程序员 898

基于LangChain和LangGraph框架构建的智能客服Agent系统_集成意图分类器对话状态跟踪器知识检索系统人机转人工决策模型LLMbased槽位提取器API服务层_实现自.zip

基于LangChain和LangGraph框架构建的智能客服Agent系统_集成意图分类器对话状态跟踪器知识检索系统人机转人工决策模型LLMbased槽位提取器API服务层_实现自.zip

上一篇: 如何实时查看linux下的日志
下一篇: Wamp5 配置PHP 图文详解
漫漫草77
博客等级 码龄18年 165粉丝 37原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值