Articles of 虚拟主机

无法从虚拟主机部署“战争”文件,看到一个目录列表

这是我的httpd.confconfiguration了虚拟主机: NameVirtualHost *:80 <VirtualHost *:80> ServerName http://foo.baz.in DocumentRoot /var/www/foo/ </VirtualHost> <VirtualHost *:80> ServerName http://bar.baz.in DocumentRoot /var/www/ </VirtualHost> 第二个虚拟主机是一个WordPress的博客,在根目录下configuration了.htaccess和index.php(即/ var / www),其余的文件在wordpress自己的文件夹中。 然而,第一个虚拟主机是一个“战争”文件,当我转到foo.baz.in ,我看到目录列表,包含战争。 我也尝试将DocumentRoot更改为/ var / www / foo / foo.war,但是出现错误 Restarting web server: apache2Warning: DocumentRoot [/var/www/foo/foo.war] does not exist 我也改变了战争的所有者和许可,以www-data:www-data并将权限更改为755,但无济于事。 我如何让Apache部署我的“战争”? 谢谢。

虚拟主机的文档根目录select

我正在调查基于名称的虚拟主机在apache下的configuration,用于configuration主域及其子域。 我在网上find了一个例子 ,build议如下configuration: Listen 80 NameVirtualHost * <VirtualHost *> ServerName www.domain.com DocumentRoot /home/httpd/htdocs/ </VirtualHost> <VirtualHost *> ServerName subdomain.domain.com DocumentRoot /home/httpd/htdocs/subdomain/ </VirtualHost> 这是有道理的,直到DocumentRoot指令。 我是否正确地说,让一个虚拟主机的文档根,另一个虚拟主机的后裔是不明智的? 这种configuration是否意味着“子域”目录将服务器上的内容在两个域?

组织虚拟主机的httpd.conf

我试图使用基于名称的虚拟主机设置一个子域,根据这个问题的configuration格式。 据我所知,这个: 最后,可以通过在容器中放置其他指令来微调虚拟主机的configuration。 大多数指令都可以放在这些容器中,然后只更改相关虚拟主机的configuration。 要确定是否允许某个指令,请检查该指令的上下文。 在主服务器上下文(在任何容器之外)中设置的configuration指令只有在不被虚拟主机设置覆盖时才会使用。 应该意味着从单个主机移动到1个主机+ 1个子域的任务应该相当简单。 但是,当我添加VirtualHost指令时,我遇到了问题。 首先(和相当灾难性的)是主域的主页返回403(禁止)。 以下任一情况可能导致: 现有的主域有一个很大的configuration文件,有很多设置。 我将虚拟主机指令放在httpd.conf末尾附近,就在虚拟主机的注释指令之后 在VirtualHost之后的文件中有很多Redirect和Rewrite – 它们会发生冲突吗? 我已经把绝对的最低限度放在了VirtualHost指令中,因为我希望尽可能简单。 将旧的httpd.conf的内容移动到一个单独的文件(例如main-domain.conf)会更好吗?将其Include在一个VirtualHost并为子域创build一个单独的conf文件,包括在第二个VirtualHost指示? 最后,是否有任何简单的方法来debugging,记住我正在使用一个活的网站,所以任何变化都必须非常快速地进行testing! 更新 好的,错误是,更具体地说: 目录索引被规则禁止 其他页面似乎工作正常,所以它必须是从主页redirect的某种问题。 我想这就是为什么我问是否有已知的VirtualHost设置和Redirect s / Rewrite之间的冲突。 如果一个与VirtualHost块中的DocumentRoot匹配的<Directory "/path/to/docroot">块在后者之前或之后(或者没有关系)? 更新2 好的,所以看起来好像没有发生以下redirect: RewriteRule ^/$ /path/to/something/else [PT] 我猜的原因有两个: 当前的configuration甚至没有尝试处理这个重写过程。 该规则本身位于VirtualHost块之后的Include d文件中。 该规则不再匹配,因为VirtualHost指令导致模式匹配失败。 对我来说,这似乎是最有可能的… 更新3 任何人都认为这可能是相关的? 请注意,默认情况下,重写configuration不会被inheritance。 这意味着您需要为每个您希望使用它的虚拟主机启用RewriteEngine on指令。 换句话说,这是否意味着我需要: <VirtualHost *:80> RewriteEngine on </VirtualHost> 对于需要处理Rewrite *的每个VH,而不是仅仅依赖全局包含文件中的RewriteEngine on […]

缺省/服务器状态位置不在Apache中inheritance

我有一个问题获取/服务器状态在Ubuntu服务器10.04.1工作Apache 2.2.14。 status.load和status.conf的缺省符号链接出现在/ etc / apache2 / mods-enabled中。 status.conf包含位置/服务器状态和适当的允许/拒绝指令。 但是,我在启用网站的唯一虚拟主机看起来像这样。 这个想法是用Tomcat URL代理任何东西到一个tomcats集群,其他任何东西都可以代替一个IIS框。 但是,这似乎导致请求/服务器状态被发送到IIS。 无论我使用什么命令,将/ server-status复制到Vhostconfiguration似乎都没有帮助。 是否有可能包括/服务器状态做一个虚拟主机configuration有一个“默认”代理规则? <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED <Proxy balancer://tomcatCluster> BalancerMember ajp://qa-app1:8009 route=1 BalancerMember ajp://qa-app2:8009 route=2 ProxySet stickysession=ROUTEID </Proxy> <ProxyMatch "^/(mytomcatappA|mytomcatappB)/(.*)" > ProxyPassMatch balancer://tomcatCluster/$1/$2 </ProxyMatch> #proxy anything that's not a tomcat URL to IIS on […]

无法让简单的Apache VHost启动并运行

不幸的是,我似乎无法得到一个简单的Apache VHost在线。 我曾经只是有一个绑定到所有的VHost: <VirtualHost *:80> ,但这不再适合安全。 我需要有一个VHost本地主机请求(即我的开发服务器)和一个传入请求通过我的域名。 这是我的新VHost: NameVirtualHost domain1.com <VirtualHost domain1.com:80> DocumentRoot /var/www ServerName domain1.com </VirtualHost> <VirtualHost domain2.com:80> DocumentRoot /var/www ServerName domain2.com </VirtualHost> 重新启动服务器后,我在日志中看到以下错误: [Wed Feb 16 11:26:36 2011] [error] [client ####.###.###.###] File does not exist: /htdocs [Wed Feb 16 11:26:36 2011] [error] [client ####.###.###.###] File does not exist: /htdocs 我究竟做错了什么? 编辑 根据下面给出的答案,我修改了我的configuration。 这是我的configuration文件: […]

虚拟主机debian apach2

我试图添加一个新的域到我的服务器运行debian和apache2。 我应该如何去添加域? 通过网站启用/可用? 如果是的话,我该怎么做 谢谢

如何在我的IIS服务器上configuration多个域名?

我们有几个网站正在运行一个IIS实例,需要为每个域名映射它们。 例如。 Site A has the domain name coolness.com Site B has the domain name 6to8Weeks.com Site C has the domain name PhatTech.com 当我查看IISconfiguration窗口的“网站标识”部分时,我注意到我可以指定一个IP地址和端口,但是如果单击“高级”button,我也可以根据主机标头值configuration站点。 如何在IIS中configuration每个站点? 理想情况下,我希望他们都能听到端口80,所以我没有奇怪的url,但我不知道如果我使用标头,IP地址,这两个,或其他。

从虚拟的Windows机器访问Ubuntu的Apache服务器本地URL应该做什么?

从虚拟窗口(VirtualBox OSE)机器访问Ubuntu的Apache服务器本地URL应该做什么? 我已经设置了可以访问Ubuntu的Apache服务器的虚拟窗口,但是当我删除与他的文件夹windows.div并恢复它 – 它不再工作。 也许我应该给更多的权限封装windows.div文件夹? 我的电脑: 电脑操作系统:Ubuntu 10.04 虚拟机:VirtualBox OSE(我在networking适配器中有'Nat'选项) 虚拟机操作系统:Windows XP 例: 进入虚拟机到Firefox和inser address.meurl。 结果:找不到服务器 但是当我直接在UBUNTU address.me我看到我的网站上的主页 谢谢,约瑟夫

如何在不更新主机的情况下浏览dev服务器上的虚拟主机

与Apache 2的虚拟主机工作正常,如果我更新主机文件。 有没有其他人可以用来到达虚拟主机,而不必更新其主机文件的url?

虚拟主机将不存在的子域redirect到www

我知道有很多不同的方法来redirect使用Apache,但我想检查这是否是通过虚拟主机做到这一点的正确方法? <VirtualHost *:80> ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/example/public <Directory "/var/www/example/public"> Options +FollowSymlinks # Prevent Direct Access to files <FilesMatch "\.(tpl|ini|log)"> Order deny,allow Deny from all </FilesMatch> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA] </Directory> <Directory "/var/www/example/public/admin/view/javascript/ckeditor"> AddType application/x-javascript .js AddType text/css .css AddType text/xml .xml </Directory> ErrorLog […]