Apache仮想ホストの推奨ワークフロー?


8

私は自分のUbuntuマシンで多くのローカルWeb開発作業を行っており、Apacheで仮想ホストを常にセットアップしています。ハードコアサーバー管理を行う必要はありませんが、/ etc / apache2 / sites-available /のファイルに手動でconfigディレクティブを追加してから、/ etc / hostsファイルを更新するという繰り返しのプロセスにうんざりしています。

私が見逃していることをすべて行うためのより効率的なまたはより自動化された方法はありますか?多分rapacheのようなものですが、それは実際に機能していますか?

回答:


8

私はちょっとしたことをしなければならなかったとき、ワイルドカード名でVirtualHostを作成しました:

  1. localhostには「example.com」のような豪華なドメイン名を選択してください
  2. 次のように/etc/hostsファイルに配置します127.0.0.1 *.example.com
  3. インストールしてアクティブ化 mod_rewrite
  4. Apacheサイトディレクトリにワイルドカード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アプリケーションが持つ他の書き換えルールと競合する可能性があります。しかし、それは私のWebアプリケーションテストのニーズにぴったりです。


それは非常に賢い、それを試してみるでしょう。ありがとう。
craig zheng

すばらしい答えです。ワイルドカードが機能しなかった以外は、機能させるにはdnsmasq使用する必要がありました。
エリアス

3

Webminの仕事を?これは、Apacheだけでなく、システム管理のためのWebインターフェースです。Apache仮想ホストへのフォーム入力インターフェースはありません。


1
webminを調べましたが、やり過ぎかもしれないと思いましたね。
craig zheng

私はそれを自分の開発サーバーで使用しています。時々SSHを使用しますが、少し簡単になります
Eman

0

ファイルを作成/更新するWebサイトを作成してみませんか?PHPを使用していて、これがローカルである場合は、exec()関数を使用して端末コマンドを実行し、テキストボックスエントリに基づいて必要なデータを書き込み/作成/更新します。私はguiベースのubuntuでアプリケーションを作成する方法を知っていればいいのですが。人生は本当に簡単になります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.