为Apache虚拟主机推荐的工作流程?


8

我在Ubuntu机器上进行了大量本地Web开发工作,而且我一直在Apache中设置虚拟主机。我不需要进行硬核服务器管理,但是我已经厌倦了手动将配置指令添加到/ etc / apache2 / sites-available /中的文件然后更新/ etc / hosts文件的重复过程。

有没有更高效或更自动化的方式来完成我所缺少的所有这些工作?也许像rapache之类的东西确实有效吗?

Answers:


8

当我不得不做些其他事情时,我继续创建带有通配符名称的VirtualHost:

  1. 为本地主机选择一个漂亮的域名,例如“ example.com”
  2. 将其放在/etc/hosts文件中127.0.0.1 *.example.com
  3. 安装并激活 mod_rewrite
  4. 在apache sites目录中创建通配符VirtualHost:

    <VirtualHost 127.0.0.1:80>
      DocumentRoot /default/path
      ServerName example.com
      ServerAlias *.example.com
      RewriteEngine On
      UseCanonicalName Off
    
      RewriteCond %{HTTP_HOST} ^(.*).example.com
      RewriteCond /srv/%1/ -d
      RewriteRule ^(.+)   %{SERVER_NAME}$1 [C]
      RewriteRule ^([^.]+)\.example\.com/(.*) /srv/$1/$2 [L]
    </VirtualHost>
    
  5. 现在,您可以在下面放置任何文件夹/srv/,它将成为该文件夹的根目录<foldername>.example.com

这是从内存中借来的,可能需要进行一些较小的调整,并且可能与每个Web应用程序具有的其他任何重写规则冲突。但这很适合我的webapp测试需求。


那非常聪明,请尝试一下。谢谢。
craig zheng

好答案。除非通配符对我不起作用,否则我必须使用dnsmasq使其起作用。
elias 2012年

3

Webmin的工作?它不仅用于Apache,而且是用于系统管理的Web界面。它确实具有一个表单填充界面来访问虚拟主机。


1
调查了webmin,但认为它可能会过大,您知道吗?
craig zheng

我在开发服务器上使用它,尽管我仍然不时使用SSH,但它使事情变得容易一些
Eman

0

为什么不建立一个为您制作/更新文件的网站?如果您使用的是php,而这是本地的,则只能使用exec()函数运行终端命令以基于文本框条目写入/创建/更新所需的数据。我希望我知道如何在基于gui的ubuntu上进行应用。会使生活变得真正轻松。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.