2012-06-14 1 views
0

아파치 웹 서버 2.2.14우분투 10.04.1을 통해 프록시를 실현하고 싶습니다. 에있는 Couchapp에 대해 Couchdb 1.0.1과 그 경험이 없습니다. 프록시는 또한 다른 couchdb-database로 리다이렉트해야하고 Apaches www-path에있는 다른 pathes도 리다이렉트해야한다. 목표는 sub.something.de에서 Couchapp (index.html)을 호출하는 것입니다.내 Couchapp 용 Apache 프록시를 어떻게 구성합니까?

내 질문은 다음과 같습니다

  1. 그것은 작동하지만, 그렇게 할 수있는 현명한 방법이? 내 자신의 방법은 나를 위해 해결 방법을 찾습니다.
  2. 문제는 couchdb-api로 로그 아웃 할 때 Apache에서 로그인 할 수있는 다른 대화 상자가 표시된다는 것입니다. 내가 로그인 한 후에는 로그 아웃 할 수 있습니다.) 문제는 uri가 로그 아웃을 요청하고 _ : _ @ sub.something.de처럼 보이는데 이것이 내 Proxy-Configuration과 일치하지 않는다는 것입니다. 해결 방안은 무엇인가? 여기

내 httpd.conf 설정입니다 :

<VirtualHost *:80> 
DocumentRoot "/var/www/Something" 
ServerName something 
ServerAlias sub.something.de 

AllowEncodedSlashes On 
ProxyRequests Off 
ProxyPreserveHost Off 
ProxyVia On 
KeepAlive Off 

<Proxy *> 
    AuthType Basic 
    AuthName "Something Login" 
    AuthUserFile /home/user/.couchdb_htpasswd 
    Require valid-user 

    Order deny,allow  
    Deny from all 
    Allow from 127.0.0.1 
    Satisfy Any 
</Proxy> 

ProxyPass /something_data http://localhost:5984/something_data/ nocanon 
ProxyPass /data http://localhost:5984/something/_design/prototype/data nocanon 
ProxyPass /css http://localhost:5984/something/_design/prototype/css nocanon 
ProxyPass /vendor http://localhost:5984/something/_design/prototype/vendor nocanon 
ProxyPass /js http://localhost:5984/something/_design/prototype/js nocanon 
ProxyPass /font http://localhost:5984/something/_design/prototype/font nocanon 
ProxyPass /php http://localhost/dev/something/php nocanon 
ProxyPass /uploads http://localhost/dev/something/uploads nocanon 
ProxyPass /_uuids http://localhost:5984/_uuids nocanon 
ProxyPass /_session http://localhost:5984/_session nocanon 
ProxyPass /_users http://localhost:5984/_users nocanon 

ProxyPass /_users ! 
ProxyPass /_uuids ! 
ProxyPass /_session ! 
ProxyPass /php ! 
ProxyPass /uploads ! 
ProxyPass /font ! 
ProxyPass /data ! 
ProxyPass /css ! 
ProxyPass /vendor ! 
ProxyPass /js ! 
ProxyPass /something_data ! 

ProxyPass/http://localhost:5984/something/_design/prototype/index.html nocanon 
ProxyPassReverse/http://localhost:5984/something/_design/prototype/ 
RequestHeader unset Authorization 

ErrorLog "/home/user/logs/couchdb_error_log" 
CustomLog "/home/user/logs/couchdb_access_log" common 
</VirtualHost> 

들으 couch.js에서 URLPrefix를의

답변

0

설정 값

#vi /etc/httpd/conf/httpd.conf 
ProxyPass /_db/ http://localhost:5984/ 
ProxyPassReverse /_db/ http://localhost:5984/ 


#vi /usr/share/couchdb/www/script/couch.js 
CouchDB.urlPrefix = '/_db/';