我曾问过一个与此有关的问题,但并不相同, 我有一个centos VPS,有两个wordpress网站,一个是mbas.co.in,另一个是onlinemba123.com,现在只用一个IP地址进行虚拟主机,首先我开始mbas.co.in,这个工作正常,当我添加onlinemba123.com然后,它加载默认的Centos页面,而不是我的网站,我只是testing我的onlinemba123网站,我没有configurationDNS,我正在testing它通过编辑我的电脑的主机文件, 我的网站文件夹名称也与下面的conf文件相同 现在我的问题是如何加载我的网站,而不是默认页面,是我的虚拟主机configuration好吗? 我的虚拟主机configuration: NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/www.mbas.co.in ServerName mbas.co.in ErrorLog logs/mbas.co.in-error_log CustomLog logs/mbas.co.in-access_log common </VirtualHost> <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/www.onlinemba123.com ServerName www.onlinemba123.com ErrorLog logs/onlinemba123-error_log CustomLog logs/onlinemba123-access_log common </VirtualHost> 我的电脑主机文件是: xx.xxx.xxx.xxx www.onlinemba123.com
我以前在野外已经看到过这样的情况:一台Apache服务器为不同的站点提供不同的域名请求,例如: 123.123.123.123 ^ domainA.com ^ domainB.com ^ domainC.com 这些域中的每一个都应该有一个单独的VirtualHost,以及一个用于所有其他请求(即直接到达IP地址的请求)的全局VirtualHost。 我怎样才能使我的服务器上这可能?
我有一个IP地址为192.168.1.65的服务器 我想要设置虚拟主机,以便: 如果我通过http://192.168.1.65/访问,它会导致我DocumentRoot A. 否则,如果我通过http://xyz.com/访问,它会导致我DocumentRoot B (xyz.com已经在dns服务器上指向192.168.1.65)
我有一个服务器运行多个网站,每个网站configuration为一个单独的虚拟主机。 一些可信的用户需要shell访问Web服务器,但是为了防止滥用和意外的错误configuration,每个用户只允许写访问他们自己的网站目录。 目前实现的方式是,每个网站的所有权设置为username:apache ,其中“用户名”是允许写入目录的用户的用户名,“apache”是组名,实际的Apache用户属于。 这种configuration在一定程度上起作用。 用户可以编辑现有文件并创build新文件,而不会出现任何问题。 然而,由于大多数网站是由各种CMS软件驱动的,所有由CMS(即,web服务器/ Apache)写入目录的内容都被写为apache:apache ,并且用户不会接收到新文件的写入权限。 我的问题: 什么是最好的方法来build立这样的configuration,允许多个用户只能写访问他们自己的目录,而由Web服务器写的文件也可以由用户写入? 是否有可能指示Apache将某些虚拟主机的数据写入另一个用户和组?
我目前有几个子域和一个主域。 我的子域被设置为指向VPS服务器的“Alogging”。 不过,我已经尝试使独立的虚拟主机,但是当我访问所有子域他们链接到一个目录是主要的。 我如何获得每个子域指向我的VPS正确的目录? 我已经尝试了虚拟主机,但问题仍然存在。 这是我的尝试: <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/hub/ ServerName www.hub.cxw.org ErrorLog logs/dummy-hub.cxw.org-error_log CustomLog logs/dummy-hub.cxw.org-access_log common </VirtualHost> <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/cxw/ ServerName www.cxw.org ErrorLog logs/dummy-cxw.org-error_log CustomLog logs/dummy-cxw.org-access_log common </VirtualHost> 请帮助。
我正在开发一个大型Web应用程序,它使用Apache 2.2,configuration了许多分布式vhost.conf文件中定义的虚拟主机的复杂configuration,然后将其包含在httpd.conf中。 有没有简单而快速的方法在一个地方列出所有的虚拟主机configuration?
我已经在各种不同的VPS服务器上,他们有时会自动为每个虚拟主机设置单独的conf文件。 我试图在我的本地机器(在xampp 1.7.3上运行ubuntu 11.04)实现相同的function。 你将如何去做这件事。 你会编辑http.conf文件吗? apache是否已经自动执行了这个操作? 如何为指定文件夹中的每个虚拟主机(例如/ opt / lampp / etc / extra / hosts)设置独立的.conf文件?
我有一个虚拟主机转发到我的主域(例如显示相同的内容,我的主要域显示)。 现在我的网站使用一个主域名:www.example.com 和各种别名域:example.com short.com 我正在创build一个新的围墙花园开发网站:dev.example.com 但是我的虚拟主机没有被识别为该url。 我必须在DNS主机中创build* .example.com的通配符logging吗? 以下是我的默认虚拟主机设置(当前位于/etc/apache2/sites-enabled/000-default )中的相关部分: <VirtualHost *:80> ServerAdmin [email protected] ServerName www.example.com ServerAlias example.com ServerAlias shortUrlEx.com ServerAlias www.shortUrlEx.com RewriteEngine On RewriteCond %{HTTP_HOST} ^example.com [NC] RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301] RewriteCond %{HTTP_HOST} ^shortUrlEx.com [NC] RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301] RewriteCond %{HTTP_HOST} ^www.shortUrlEx.com [NC] RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301] DocumentRoot /var/www/examplepath php_value date.timezone "America/New_York" php_value expose_php […]
我正在Linux机器上build立一个虚拟主机。 我已经做了必要的DNS更改,他们已经传播并正常工作。 在我的/etc/httpd/conf/httpd.conf文件中还有许多其他的虚拟主机正在正常工作(其他人设置了这些主机)。 我的新虚拟主机的configuration是这样的(其中真正的IP已经被replace为##。###。###。###): <VirtualHost ##.###.###.###:80> ServerName www.website.com ServerAlias website.com DocumentRoot /var/www/html/website.com ErrorLog logs/website.com-error_log CustomLog logs/website.com-access_log combined </VirtualHost> <Directory /var/www/html/website.com> Order deny,allow Allow from all AllowOverride All </Directory> 该网站的所有文件都位于/var/www/html/website.com。 当我访问website.com时,将显示此服务器上的主站点而不是website.com。 什么是其他configuration设置(任何地方)可以做到这一点? 还有其他的虚拟主机以相同的方式build立(从我可以告诉),他们正在正常工作。
我在我的开发工作站(实际上包含在/etc/apache2/users/andrew.conf中)的apache.conf中有以下内容: <Directory "/Users/andrew/Sites/"> Options Indexes MultiViews AllowOverride All Order allow,deny Allow from all </Directory> <VirtualHost *:80> DocumentRoot /Users/andrew/Sites/mysite/public ServerName mysite.dev </VirtualHost> 我依赖于新安装的Mac OS X Lion中的默认设置,并添加了VirtualHost指令。 当我得到http:// localhost /〜andrew /它不会尝试提供标准的目录索引,而是尝试服务于VirtualHost。 我期望这只会发生在ServerName“mysite.dev”访问它时。 如果我删除VirtualHost,它正确地服务目录索引。 任何想法,为什么这可能会发生? 更新:我发现如果我把VirtualHost指令从users / andrew.conf移到extra / http-vhosts.conf,那么它工作正常。 我想这回答我的问题,但是我还不清楚根本原因: ## httpd.conf Include /private/etc/apache2/extra/httpd-userdir.conf Include /private/etc/apache2/extra/httpd-vhosts.conf ## extra/http-userdir.conf UserDir Sites Include /private/etc/apache2/users/*.conf <IfModule bonjour_module> RegisterUserSite customized-users </IfModule> […]