6165金沙总站Apache配置虚拟目录和多主机头的方法,Apache虚拟目录配置及vue

<VirtualHost *:80>
  ##ServerAdmin webmaster@dummy-host.example.com
  DocumentRoot "C:/xampp/htdocs/mobileApp" ##你的后端项目目录
  ServerName www.mytest.com ##虚拟域名
  ##ServerAlias www.dummy-host.example.com
  ##ErrorLog "logs/dummy-host.example.com-error.log"
  ##CustomLog "logs/dummy-host.example.com-access.log" common
  <Directory "C:/xampp/htdocs/mobileApp"> 
    Options Indexes FollowSymLinks
    DirectoryIndex index.html index.php
    AllowOverride all
    Order allow,deny
    Allow from all
  </Directory>
</VirtualHost>
<IfModule alias_module>
  #
  # Redirect: Allows you to tell clients about documents that used to 
  # exist in your server's namespace, but do not anymore. The client 
  # will make a new request for the document at its new location.
  # Example:
  # Redirect permanent /foo http://localhost/bar

  #
  # Alias: Maps web paths into filesystem paths and is used to
  # access content that does not live under the DocumentRoot.
  # Example:
  # Alias /webpath /full/filesystem/path
  #
  # If you include a trailing / on /webpath then the server will
  # require it to be present in the URL. You will also likely
  # need to provide a <Directory> section to allow access to
  # the filesystem path.

  #
  # ScriptAlias: This controls which directories contain server scripts. 
  # ScriptAliases are essentially the same as Aliases, except that
  # documents in the target directory are treated as applications and
  # run by the server when requested rather than as documents sent to the
  # client. The same rules about trailing "/" apply to ScriptAlias
  # directives as to Alias.
  #
  ScriptAlias /cgi-bin/ "D:/Program Files/Apache2.2/cgi-bin/"

  Alias /DemoSite "D:/Code/WebSite"

  <Directory "D:/Code/WebSite">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
  </Directory>
</IfModule>

2.找到\apache\conf\extra\httpd-vhosts.conf这个文件配置项目目录

多个虚拟目录

您可能感兴趣的文章:

  • Apache配置虚拟目录和多主机头的方法
  • PHP编程之设置apache虚拟目录
  • apache中为php 设置虚拟目录
  • 解析在apache里面给php写虚拟目录的详细方法
  • Apache
    添加虚拟目录注意事项
  • Apache
    虚拟目录和默认首页的设置
  • Apache虚拟目录简单知识汇总

配置好后,重启apache服务,浏览器输入www.mysite1.com:8080,就会自动定向到D:\Program
Files\Apache2.2\htdocs站点了

配置需求来自于前后端分离。后台由于使用PHP或者Java,但是前端使用vue,React这些框架时怎么和后端有效的数据通信。反向代理是个很好的选择,虽然jsonp也可以,单并不好玩。

输入www.mysite2.com:8080就会自动定向到D:\Code\MySite站点,如此就可以实现在一个服务器上同时运行多个站点

  proxyTable: {
   '/api': {
    target: 'http://www.mytest.com/api',
    changeOrigin: true,
    pathRewrite: {
     '^/api': ''
    }
   }
  },

您可能感兴趣的文章:

  • Apache虚拟目录配置及vue-cli反向代理的设置方法
  • PHP编程之设置apache虚拟目录
  • apache中为php 设置虚拟目录
  • 解析在apache里面给php写虚拟目录的详细方法
  • Apache
    添加虚拟目录注意事项
  • Apache
    虚拟目录和默认首页的设置
  • Apache虚拟目录简单知识汇总

-实际上线项目需要通过域名来访问,比如

#多主机头配置无需放在特定的节点下面,一般直接在配置文件底部添加即可
#NameVirtualHost addr[:port] 为一个基于域名的虚拟主机指定一个IP地址(和端口)
#声明主机头必须加这条指令,否者主机头配置不会生效
#VirtualHost节点下面ServerName就是要绑定的域名,DocumentRoot表示此域名指向的目录
#本机测试的话请在hosts中进行域名绑定如 127.0.0.1 www.mysite1.com

NameVirtualHost *:8080
<VirtualHost *:8080>
  ServerName www.mysite1.com
  DocumentRoot "D:\Program Files\Apache2.2\htdocs"
</VirtualHost>

<VirtualHost *:8080>
  ServerName www.mysite2.com
  DocumentRoot "D:\Code\MySite"
</VirtualHost>

2.配置Apache项目目录

了解一下根目录和虚拟目录的关系:
安装过apache之后打开httpd.conf文件会发现DocumentRoot默认设置的应该是apache安装目录中的htdocs文件夹。然后你的网页就可以放大这个htdocs文件夹中测试,例你在里面放了一个1.PHP,可以输入可以正常访问。

  $.ajax({
        url: '/api/indexList.php',
        type: 'GET',
        success: function (data) {
          that.list = data.data;
          console.log(data);
        }
      })

打开httpd.conf文件,搜索<IfModule alias_module>
节点,然后在节点内输入以下内容:

这样就可以实现跨域访问了。

重启Apache服务后,在浏览器输入
这里需要注意下目录尽量使用”/”,而不是使用”\”,原因就是”\”代表转义符有些情况下会导致莫名奇妙的错误,下面附上完整的<IfModule
alias_module>节点以供参考

# Virtual hosts
Include conf/extra/httpd-vhosts.conf (这行的注释#去掉)

  首先把Apache安装到D:\Program
Files\Apache2.2目录下,端口号设置为8080,安装完成后默认的网站根目录为D:\Program
Files\Apache2.2\htdocs,通常我们可以在htdocs下面建立个文件夹MySite,然后在浏览器输入:
这样就可以看到我们自己的站点了。然而有时我们想把站点放到其它目录下面,这时就需要配置虚拟目录了
比如我们在D盘建立如下文件夹D:\Code\WebSite,然后通过

3.proxyTable代理配置,以vue-cli为例

#下面是虚拟目录声明格式
#Alias用来定义虚拟目录及虚拟目录路径,其中虚拟目录名称用于URL访问的路径别名,可以和虚拟目录名称不同
#<Directory/>节点用于定义目录的访问权限等
#
#Alias 虚拟目录名称 虚拟目录路径
#<Directory 虚拟目录路径>
#  Options Indexes FollowSymLinks
#  AllowOverride All
#  Order allow,deny
#  Allow from all
#</Directory>

#下面是具体的示例,/DemoSite是目录别名 "D:/Code/WebSite"是虚拟目录的实际路径
Alias /DemoSite "D:/Code/WebSite"

<Directory "D:/Code/WebSite">
  Options Indexes FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>

示例:

多主机头绑定
(就是在一个端口上绑定多个域名,然后每个域名可以指向不同的目录进行访问,主机头是IIS里面的说法),打开httpd.conf文件,在文件最后添加如下内容

1.找到C:\Windows\System32\drivers\etc\hosts这个文件添加以下格式内容

虚拟目录是什么?顾名思义只是一个虚拟的目录,和真实目录是有差别的。先来看看使用真实目录访问,我们在刚才的F:/MyPHP中建立一个文件夹Test,然后在里面放入2.php,这个时候就可以通过

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

Apache配置虚拟目录

1.找到 \apache\conf\httpd.conf 这个文件,修改内容

127.0.0.1    www.mytest.com //你的虚拟域名