【问题标题】:How to use xip.io with several virtualhosts and server names? (local dev)如何将 xip.io 与多个虚拟主机和服务器名称一起使用? (本地开发)
【发布时间】:2012-09-16 06:01:19
【问题描述】:

在使用不同服务器名称的虚拟主机时,是否可以使用 xip.io 访问本地网站? (我在 linux 上,fedora)。

例如,假设我有 3 个可以在本地访问的网站,如下所示:

- http://localsite1
- http://localsite2
- http://localsite3

我想通过 xip.io 用其他设备访问它们:

- http://localsite1.192.168.0.15.xip.io
- http://localsite2.192.168.0.15.xip.io
- http://localsite3.192.168.0.15.xip.io

我不知道如何进行这项工作,甚至可能吗?

【问题讨论】:

标签: virtualhost apache web-testing


【解决方案1】:

是的,应该可以。我认为您可以拥有任意数量的本地站点域。检查您的主机和 httpd-vhosts.conf 文件。

/etc/apache2/extra/httpd-vhosts.conf 中的服务器别名对我有用。我在网络偏好设置中使用* 而不是当前 IP。

请记住在进行更改后重新启动 Apache 服务器。

例如,我当前在 Mac OS System Preferences > Network 中的本地 IP 显示:Wi-Fi 已连接到 Workalicious2011,并且 IP 地址为 10.0.1.118。

所以我的/etc/apache2/extra/httpd-vhosts.conf 文件有以下内容:

# Ensure that Apache listens on port 80
Listen 80
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80

<VirtualHost *:80>
  DocumentRoot "/Users/davekaplan/Sites/workalicious.com"
  ServerName dev.workalicious.com
  ServerAlias dev.workalicious.com.*.xip.io
  ErrorLog "/private/var/log/apache2/dev.workalicious.com-error_log"
  CustomLog "/private/var/log/apache2/dev.workalicious.com-access_log" common
</VirtualHost>

我的/etc/hosts 文件有:

##
Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1         localhost
255.255.255.255   broadcasthost
::1               localhost
fe80::1%lo0       localhost

127.0.0.1         dev.workalicious.com

在我的本地网络上,我可以浏览到以下内容并查看我的本地开发站点: http://dev.workalicious.com.10.0.1.118.xip.io/

我有一个类似的问题,我正在使用一台 Mac 并想在计算机和其他设备上进行测试。当您无法访问主机文件(例如平板电脑)时,使用 .xip.io 非常有用。

如果您可以访问计算机上的 hosts 文件,则可以添加本地开发主机的 IP,然后浏览到相同的 url。它非常适合 PC 或其他 Mac。例如,我会将100.0.1.118 dev.workalicious.com 添加到测试计算机的主机文件中,只要我在本地网络上,我就可以在该测试计算机上浏览到 dev.workalicious.com 并查看托管在开发计算机上的站点。

我在 .xip.io 之前使用的另一种方法是 Charles,它效果很好,并且有一些关于如何设置的不错的博客文章。目前 1-4 位用户的费用为 50 美元。

(我正在尝试弄清楚如何使用Pow and Apache 进行类似的方法,但我认为它在本地开发机器之外无法使用。)

【讨论】:

    【解决方案2】:

    对我来说,服务器别名工作。
    例如:

    <VirtualHost *:80>
        <Directory "/home/michelangelo/www/mysite">
        Options Indexes FollowSymLinks
        Order allow,deny
        Allow from all
        </Directory>
        ServerAdmin michelangelo@mystie.com
        DocumentRoot /home/michelangelo/www/mysite
        ServerName mysite.local
        ServerAlias mysite.local.192.168.0.6.xip.io
        ErrorLog /home/michelangelo/public_html/logs/mysite_error_log
        CustomLog /home/michelangelo/public_html/logs/mysite_access_log common
    </VirtualHost>
    

    在 lubuntu 上测试

    【讨论】:

    • 谢谢 micheg79。它对我不起作用,但我知道现在应该可以了!我会继续调查。
    【解决方案3】:

    我今天正在处理我的项目,并且卡住了一段时间,但我发现了一个非常简单的设置,它就像一个魅力。

    您像以前一样设置您的虚拟主机(今天完全不必使用别名 xip.io) 有趣的部分来了,当您编辑主机主机文件时,在您的域名之前输入您分配的本地 IP 号码,例如192.168.10.110 myawesomewebsite.com - 您可以访问 myawesomewebsite.com.192.168.10.110.xip.io

    【讨论】:

      猜你喜欢
      • 2014-11-29
      • 2013-03-01
      • 2012-01-10
      • 2012-02-16
      • 2019-02-14
      • 2011-06-05
      • 2017-04-08
      • 2015-07-04
      • 1970-01-01
      相关资源
      最近更新 更多