Articles of 虚拟主机

apache2反向代理2虚拟主机&ssl

我有2个服务器:app1.example.biz&app2.example.biz我需要做以下使用apache2作为反向代理redirect来自互联网的所有stream量到适当的服务器和使用ssl。 我所做的configuration允许我将app1.example.bizredirect到https app1.example.biz,我可以访问服务器。 问题是,我不能做同样的app2.example.biz,当我键入app2.example.biz它redirect到https app1.example.biz! PS:我不能发布超过两个超链接,因为我是一个新用户,但我的configuration是正确的。 <VirtualHost *:80> ServerName app1.example.biz/ Redirect / https app1.example.biz/ </VirtualHost> <VirtualHost *:443> ServerName app1.example.biz ServerAlias app1.example.biz ProxyPass / http app1.example.biz/ ProxyPassReverse / http app1.example.biz/ SSLEngine on SSLCertificateFile /etc/ssl/servwiki.crt SSLCertificateKeyFile /etc/ssl/servwiki.key SSLVerifyClient none </VirtualHost> #<VirtualHost *> # ServerName app2.example.biz/ # Redirect / https app2.example.biz/ #</VirtualHost> <VirtualHost *> ProxyPreserveHost On ServerName app2.example.biz […]

没有findhtaccess

我在Debian 6上安装了Apache 2(从webmin)服务器。 我已经在服务器上设置了一个虚拟主机db.domain.com工作正常,但.htaccess不起作用,如果你从IP地址访问和目录列出,如果没有findindex.php? db.domain.com -> 403 forbidden xxx.xxx.xxx.xxx -> gets access to the server 为什么从服务器IP地址获取访问权时忽略.htaccess? httpd.conf文件 <Directory *> Options -Indexes FollowSymLinks </Directory> <VirtualHost *:80> ServerName db.domain.com DocumentRoot /var/www </VirtualHost> htaccess的 order deny,allow deny from all

Ubuntu的 – 你没有权限访问/在这台服务器上

我安装了Ubuntu的服务器12.04,并使用guestadditions使用Windows 7文件夹作为共享文件夹。 我可以看到该文件夹​​为sf__projects,所以我把它链接到var / www / _projects 但问题是所有文件夹都有用户根分配给他们。 我从不同的博客尝试了这么多的select,但没有任何作品。 这是我得到的Apache错误日志: [Tue Jul 17 17:43:27 2012] [crit] [client 192.168.0.108] (13)Permission denied: /var/www/_projects/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable 文件夹的截图:[ http://www.diigo.com/item/image/80d3/d3ha ] / etc / hosts中: 127.0.0.1 bab.local www.bab.local 在/ etc / apache2的/网站可用/ BAB <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot "/var/www/_projects/bab/master" ServerName bab.local ServerAlias […]

为一个VirtualHost覆盖大规模虚拟主机

我不确定这个问题措辞是否恰当。 基本上,我已经通过http://httpd.apache.org/docs/2.2/vhosts/mass.htmlbuild立起来,这样我只需要在我的〜/ Sites文件夹中创build一个文件夹(比如example.test)我可以去http://example.test (授予我的主机文件匹配)。 我正在研究一些在公共目录之上安装一个框架的项目,所以我想知道是否可以为单个虚拟主机重写虚拟主机。 我尝试了以下内容: # I want this… NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot /Users/cameron/Sites/laravel.test/public ServerName laravel.test </VirtualHost> # …to override this only for laravel.test UseCanonicalName Off VirtualDocumentRoot /Users/cameron/Sites/%0 Laravel PHP框架像我所说的那样在公众层上面安装框架,所以当我去http://laravel.test时 ,我想要它到/Users/cameron/Sites/laravel.test/public /Users/cameron/Sites/laravel.test/如果这是有道理的… 但是上面的代码不起作用。 它基本上忽视了最后两行之前的任何内容。 所以我的问题是…是否有办法实现我想要的? 不一定是我正在尝试的方法,但是我拥有大量的本地站点,其中99%的站点在大规模虚拟主机方式下工作良好,我只是偶尔想要重写这个行为。

如何设置网站的用户名

我有一个新闻服务器。 它可能会有多个虚拟主机。 我看到有两种方法。 一个是以root身份login并在/ www / etc下创build文件,比如; /var/www/website1/public_html /var/www/website2/public_html 另一种方法是用每个虚拟主机创build一个新用户,并将其放入用户的目录中。 喜欢; /home/website1/ /home/website2/ 我的设置就像第一个。 我想知道一种方法是否有重要的优势? 或者还有其他的方法吗? 有任何想法吗?

同时使用不同的PHP版本,php_value extension_dir不工作?

我需要PHP 5.4.7和5.3.17在Windows 7 x64和Apache 2.2.23上运行。 这是我的虚拟主机configuration: <VirtualHost *:80> DocumentRoot "C:/WAMP/Apache/htdocs/php54" ServerName php54.local PHPIniDir "C:/WAMP/PHP54" LoadModule php5_module "C:/WAMP/PHP54/php5apache2_2.dll" php_value extension_dir "C:/WAMP/PHP54/ext" <Directory "C:/WAMP/Apache/htdocs/php54"> Order allow,deny Allow from all </Directory> </VirtualHost> PHPIniDir和LoadModule指令工作正常,并在我的脚本中使用phpinfo()打印正确的PHP版本。 但我需要加载扩展,这是失败的地方。 php_value extension_dir应该是C:/WAMP/PHP54/ext但它是(默认的) C:/php 。 我在这里错过了什么? 编辑 :当然,我可以直接在C:/WAMP/PHP54/php.ini设置这个值,但我更喜欢使用虚拟主机configuration传递它: ; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir ; extension_dir = "./" ; On […]

CentOs虚拟主机显示默认的Apache页面

我正在使用CentOs 6.2。 在这台服务器上,我想要托pipe1个网站。 我在httpd.conf中创build了一个虚拟主机。 你可以看到下面的设置。 问题是,当我去的域我得到的Apache默认页面。 我重新启动了httpd deamon。 有谁知道我可能做错了什么? NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin helpdesk@***.nl DocumentRoot /var/website ServerName ***.nl #ServerAlias www.***.nl ErrorLog logs/***.nl-error_log CustomLog logs/***.nl-access_log common </VirtualHost> 编辑:我检查了日志:访问日志: 77.160.172.88 – – [27/Nov/2012:20:37:10 +0100] "GET / HTTP/1.1" 403 5039 77.160.172.88 – – [27/Nov/2012:20:37:11 +0100] "GET /favicon.ico HTTP/1.1" 403 295 错误日志: [Mon Nov 26 22:37:46 2012] [error] […]

按字母顺序排列的Apache2默认虚拟主机,或用_default_虚拟主机覆盖?

我在Apache Web服务器上有多个命名的虚拟主机(CentOS 5,Apache 2.2.3)。 每个虚拟主机在/etc/httpd/vhosts.d都有自己的configuration文件,这些虚拟主机configuration文件包含在主httpd conf中, Include vhosts.d/*.conf 这里有一个虚拟主机的例子 NameVirtualHost *:80 <VirtualHost *:80> ServerName www.domain.biz ServerAlias domain.biz www.domain.biz DocumentRoot /var/www/www.domain.biz <Directory /var/www/www.domain.biz> Options +FollowSymLinks Order Allow,Deny Allow from all </Directory> CustomLog /var/log/httpd/www.domain.biz_access.log combined ErrorLog /var/log/httpd/www.domain.biz_error.log </VirtualHost> 现在,当任何人试图直接通过公共IP地址访问服务器时,他们会得到在聚合configuration中指定的第一个虚拟主机(所以在我的情况下,它是从vhosts.d目录的字母顺序)。 任何人通过IP地址直接访问服务器,我想他们只是得到一个403或404。 我发现了几种设置默认/全部虚拟主机和一些相互矛盾的观点的方法。 我可以在vhosts.d中创build一个叫做000aaadefault.conf的新的虚拟主机configuration文件,但是这有点令人讨厌。 在包含vhosts.d目录之前,我可以在主httpd.conf有一个<VirtualHost>块。 我可以在我的主httpd.conf指定一个DocumentRoot 那么在httpd.conf中用_default_ http://httpd.apache.org/docs/2.2/vhosts/examples.html#default指定默认虚拟主机 在Include vhosts.d/*.conf之前,在我的httpd.conf有一个<VirtualHost _default_:*>块是否是最好的方式?

Apache2中每个IP有多个命名的虚拟主机

我已经看到了许多关于托pipe多个虚拟主机的类似问题 ,每个IP有一个,但是找不到一个关于多个虚拟主机每个IP的问题。 简而言之,我有一台需要托pipe多个SSL证书的Apache2服务器。 我有两个单独的IP地址。 我在IP(a)上有三个域,一个在IP(b)上有多个子域,如下所示: IP(a) – SSL(a) – https:://domain1 – domain2 – domain3 IP(b) – SSL(b) – https://sub1.domain4 – https://sub2.domain4 – https://sub3.domain4 正如我最近添加IP(b) ,我的第一步是将域4过渡到该IP。 在sub1 , sub2 , sub3.domain条目的vhost conf文件中,我将<VirtualHost *:80>切换到<VirtualHost IP(b):80> 。 重新启动Apache,我得到以下错误: [警告] VirtualHost 173.230.156.48:80与VirtualHost 173.230.156.48:80重叠,第一个优先,也许你需要一个NameVirtualHost指令 我在我的apache.conf中有以下NameVirtualHost条目: NameVirtualHost *:80 NameVirtualHost *:443 任何指针正确的方式来进行? 谢谢。 更新: 每Shane的答案和其他人 ,我已经改变了我的configuration以下,但现在有一个问题提供IP(一):443内容: ports.conf Listen IP(a):80 Listen IP(b):80 <IfModule […]

为什么其他虚拟主机如果我访问未configuration的url生效

我有一个根服务器,我有apache2运行一些虚拟主机configuration处理我的域与一些子域的2。 我意识到如果我尝试访问一些在我的虚拟主机configuration的url,那么我会得到我configuration的一个虚拟主机显示。 例如,我有一个webmail.mydomain.com上设置的webmail客户端。 现在,如果我input类似hello.mydomain.com,那么它显示我的webmail客户端。 绝对没有指向我的webmail客户端或与hello.mydomain.com相关的任何东西。 为什么会这样呢?