Pound + WebDAV / サーバー構成

投稿日: 2003年12月26日 更新日: 2017年07月22日

Pound + WebDAV

設定ファイルに WebDAV のリクエストメソッドを通すように設定

# /usr/local/etc/pound.cfg
# 次の2行を追加
ExtendedHTTP 1
WebDAV 1

しかし DreamWeaver MX から接続すると501エラーになる。

pound のログにも bad request が出ていた。PROPFIND メソッドが通っていない。

configure 時に –enable-msdav オプションを追加することで解決。

./configure --with-log=LOG_LOCAL1 --with-ssl=/usr/local/ssl --enable-msdav

追記:

一部のファイルで 501 Not Implemented が出た。画像等を Esehttpd に振り分けていたのが原因。ちょっとはまった。

UrlGroup ".*\.(jpg|gif|css|js)$"

サーバー構成

またも DICON の練習

# Web Server + DB Server
                              +-----+                                        
                              |users|                                        
                              +--+--+                                        
                                 |                                           
                    +---------------------------+                            
                    |            |    Web Server|                            
                    |         +--+--+           |                            
                    |         |Pound|           |                            
                    |         +--+--+           |                            
                    |            |              |                            
                    |     +------+------+       |                            
                    |     |             |       |                            
                    |  +--+---+     +---+----+  |                            
                    |  |Apache|     |Esehttpd|  |                            
                    |  +--+---+     +--------+  |                            
                    |     |                     |                            
                    |   +-+--+                  |                            
                    |   |PHP |                  |                            
                    |   +-+--+                  |                            
                    |     |                     |                            
                    |  +--+---+                 |                            
                    |  |pgpool|                 |                            
                    |  +--+---+                 |                            
                    |     |                     |                            
                    +---------------------------+                            
                          |                                                  
                    +---------------------------+                            
                    |     |            DB Server|                            
                    |  +--+-------+             |                            
                    |  |PostgreSQL|             |                            
                    |  +----------+             |                            
                    |                           |                            
                    |                           |                            
                    +---------------------------+                            

今は pgpool 外してます。

サーバが増えたら(Web Server2)以下のような構成になる?

# Web Server * 2 + DB/File Server
              +-----+                                                        
              |users|                                                        
              +--+--+                                                        
                 |                                                           
    +-----------------------------+     +-------------+                      
    |            |     Web Server1|     | Web Server2 |                      
    |         +--+--+             |     |             |                      
    |         |Pound|             |     |             |                      
    |         +--+--+             |     |             |                      
    |            |                |     |             |                      
    |     +------+------+---------|-----|-----+       |                      
    |     |             |         |     |     |       |                      
    |  +--+----+    +---+----+    |     | +---+---+   |                      
    |  |Apache |    |Esehttpd|    |     | |Apache |   |                      
    |  |+PHP   |    +---+----+    |     | |+PHP   |   |                      
    |  |+pgpool|        |         |     | |+pgpool|   |                      
    |  +--+----+        |         |     | +---+---+   |                      
    |     |             |         |     |     |       |                      
    +-----------------------------+     +-------------+                      
          |             |                     |                              
          +------+------+-----+---------------+                              
                 |            |                                              
    +---------------------------------------------------+                    
    |            |            |           DB/File Server|                    
    |       +----+-----+    +-+-+                       |                    
    |       |PostgreSQL|    |NFS|                       |                    
    |       +----------+    +---+                       |                    
    |                                                   |                    
    |                                                   |                    
    +---------------------------------------------------+                    

これだと管理が大分楽になる

極端な話「Web Server 1」と「Web Server 2」には HDD が載って無くてもいい。

次の図は役割ごとにサーバを分けた場合の図。

# 
                 +-----+                                                     
                 |users|                                                     
                 +--+--+                                                     
                    |                                                        
            +------------------------+                                       
            |       |    Load Blancer|                                       
            |    +--+---+            |                                       
            |    |Pound |            |                                       
            |    +--+---+            |                                       
            |       |                |                                       
            +------------------------+                                       
                    |                                                        
        +-----------+------------------------+                               
        |           |                        |                               
   +----|------------------------+     +------------------+                  
   |    |           | Web Server1|     |     | Web Server2|                  
   |    |           |            |     |     |            |                  
   |    |           |            |     |     |            |                  
   | +--+----+  +---+----+       |     | +---+---+        |                  
   | |Apache |  |Esehttpd|       |     | |Apache |        |                  
   | |+PHP   |  +---+----+       |     | |+PHP   |        |                  
   | |+pgpool|      |            |     | |+pgpool|        |                  
   | +--+----+      |            |     | +---+---+        |                  
   |    |           |            |     |     |            |                  
   +-----------------------------+     +------------------+                  
        |           |                        |                               
        +-------+---+------------------------+--+                            
                |                               |                            
   +------------------------------+      +----------------+                  
   |            |        DB Server|      |      |      NAS|                  
   |       +----+-----+           |      |    +-+-+       |                  
   |       |PostgreSQL|           |      |    |NFS|       |                  
   |       +----------+           |      |    +---+       |                  
   |                              |      |                |                  
   |                              |      |                |                  
   +------------------------------+      +----------------+                  

名前:宮内 はじめ

Code for Nagoya名誉代表

E2D3名古屋支部長

プログラマーです。GISやデータビズが好きです。このサイトは宮内の個人的なメモです。

プロフィール

お問い合わせ