Articles of 虚拟主机

如何在apache vhost环境下设置IP访问的默认站点?

在Debian Linux上运行Apache时,我有一个虚拟主机环境。 它运行良好,但我不知道如何设置一个默认网站的请求直接到服务器的IP而不是域名。 我怎样才能configurationApache服务器的所有请求到IP的特定网站。

在没有DNS的情况下使用内部虚拟主机

我需要在同一台机器上为大量网站提供服务。 我需要能够dynamic地添加和删除网站。 在内部,Web服务器需要认为请求是从虚拟主机到达的。 是否可以在前面使用nginx来处理以下格式的请求:example.com/vhost1/some/path并将其重写为:vhost1.example.com/some/path 我可以做到这一点,而无需为vhost1.example.comconfigurationDNS? 我是否需要将vhost1.example.com添加到机器上的主机名称? 谢谢

通配符DNS与单个子域DNS组合

我试图让所有子域指向磁盘上的一个位置,并且一个特定的子域(dev)指向另一个位置。 我试过这个: <VirtualHost cueflash.com> ServerAdmin webmaster@localhost ServerAlias www.cueflash.com *.cueflash.com DocumentRoot /home/cueflash/www/cueflash.com CustomLog /var/log/apache2/cueflash.com.log combined ErrorLog /var/log/apache2/cueflash.com.error.log </VirtualHost> <VirtualHost dev.cueflash.com> ServerAdmin webmaster@localhost ServerAlias dev.cueflash.com DocumentRoot /home/cueflash/www/dev.cueflash.com CustomLog /var/log/apache2/cueflash.com.dev.log combined ErrorLog /var/log/apache2/cueflash.com.error.dev.log </VirtualHost> 但似乎都指向主要网站。

Apache2,VirtualHosts,SSL,Mutli域名证书

我有一个与一个IP和三个项目链接到同一文件夹的Debian服务器。 在VirtualHosts中我有一些不同的联合。 我现在想要将某些部分redirect到HTTPS。 对于一个项目,这工作正常(见下文),但我有其他项目的问题。 我有三个项目的多域名证书。 模块ssl和重写正在工作。 NameVirtualHost * Listen 80 Listen 443 <Directory /home/projekt/> Allow from all AllowOverride All Order allow,deny Options FollowSymLinks </Directory> <VirtualHost *:80> ServerAdmin support@projekt DocumentRoot "/home/projekt/cfdocs" ServerName local-projekt.com [..] </VirtualHost> <VirtualHost *:80> ServerAdmin support@projekt DocumentRoot "/home/projekt/cfdocs" ServerName projekt-de.com [..] </VirtualHost> <VirtualHost staticIP:443> ServerAdmin support@projekt DocumentRoot "/home/projekt/cfdocs" ServerName projekt-de.com SSLEngine On SSLCertificateFile […]

我怎样才能合并一个SSL vhostconfiguration和一个非ssl虚拟主机configuration为同一个网站?

我希望我的网站支持非SSL和SSL访问。 我所要做的是复制非SSLconfiguration,并将端口更改为443,并添加SSL的东西。 不理想的pipe理! 有没有办法来合并这两个configuration? 这是我目前的configuration: <VirtualHost *:80> ServerName www.site.tld ServerAlias site.tld suPHP_UserGroup site site DocumentRoot /path/to/site/www <Directory /path/to/site/www> AllowOverride All Order allow,deny allow from all Options -MultiViews </Directory> ExpiresActive On ExpiresByType image/gif "access plus 7 days" ExpiresByType image/jpeg "access plus 7 days" ExpiresByType image/png "access plus 7 days" ExpiresByType image/x-icon "access plus 7 days" ExpiresByType […]

在nginx.conf中定义根指令的地方

我有一个关于在处理不同虚拟主机的服务器上设置nginx的问题。 我现在有点困惑root指令应该在哪里。 我看到了以下两种可能性。 变体A server { listen 80; server_name www.site.com; access_log /var/log/nginx/www.site.com.access.log main; root /var/www/$server_name/htdocs; location / { index index.html; } } 或另一个 变式B server { listen 80; server_name www.site.com; access_log /var/log/nginx/www.site.com.access.log main; location / { root /var/www/$server_name/htdocs; index index.html; } } 如果两个变体是平等的,我有点困惑。 对于不同的虚拟主机,我计划在/etc/nginx/sites-available具有不同server_name和root指令的独立.conf文件。 要激活一个虚拟主机,我将在/etc/nginx/sites-enabled有一个到conf文件的符号链接。 或者你将configuration文件存储在/var/www/$server_name ,让它“closures”www数据? 所以总结一下,我有两个问题: 1. nginx.conf文件的两个变体中的哪一个更适合多vhost安装,为什么? 2.你将在哪里存储每个虚拟主机的configuration文件? 谢谢。

在Mac OS X Server上托pipe多个域

我第一次设置了Mac OS X Server(10.5 Leopard)。 我将configuration它运行多个域(或称为“虚拟主机”),并为每个域设置一个网站和电子邮件。 我购买了Mac OS X Server Essentials(第二版)作为参考。 假设我想要托pipe两个域:example.com和anotherexample.com。 查看第319页,它显示了如何在Workgroup Manager应用程序中为用户启用电子邮件帐户。 看看屏幕截图,这似乎意味着所有的用户都需要引用同一个邮件服务器,我猜这是我用来设置Mac OS X Server的初始服务器名称。 所以,如果我想为Alice设置一个example.com电子邮件地址,并为Bob设置一个anotherexample.com电子邮件地址,并且他们询问他们需要将什么设置放入他们的电子邮件客户端,那么是否告诉他们两个使用服务器“mail.example.com” – 即使对于鲍勃,这将看起来更奇怪,因为他没有在该域的电子邮件地址? 如果所有的用户都需要使用同一个邮件服务器,而不pipe他们有什么电子邮件地址,那么我应该使用某种“通用”域(也许是“examplehosting.com”)来设置服务器软件 – 所以它不“看”这么奇怪?

VMWare / VirtualBox:无法ping通主机专用networking适配器从Windows主机到Linux客户端

场景: Windows主机运行XP SP3 (虚拟)Ubuntu Server 10.04(全新安装,在安装过程中只select“LAMP Package”选项。 在VMWare Player / VirtualBox上testing 我可以通过ip从一个箱子ping到另一个没有问题。 当我尝试通过主机名称(在Linux或Windows中),我得到一个消息告诉我,主机找不到。 我一直在阅读文档,searchVMWare和VBox的论坛,但这是我第一次尝试运行一个Linux的盒子,我觉得我错过了一些configuration或软件包的安装,使这项工作。 注意:我需要使用Linux主机专用的适配器,因为我们正在为开发设置一个虚拟机器,而且它的LAMP堆栈必须是本地的,才能使用它。 我们不希望使用桥接适配器,因为如果我们这样做,我们需要为每个要使用的VM副本设置一个不同的名称。

在单独的apache虚拟主机定义之间inheritanceconfiguration参数

我有一套虚拟主机需要单独的虚拟主机定义*:80和*:443。 创build这些之后,我发现我有20-40个configuration参数,它们都是*:80和*:443共享的; 有没有一种方法来指定一次,让他们共享,而不是两次(每个VirtualHost定义一次?)

ServerAlias无法正常工作

我有一个VPS,我已经configuration托pipe多个网站与基于名称的托pipe。 这只是使用example.com和www.example.com 。 它也适用于example.net ,但是当我尝试example.net时 ,它恢复到我的默认站点configuration,这只是显示我的默认(空)index.html页面。 这是默认文件: <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/error.log # Possible […]