You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by "Jan Lehnardt (JIRA)" <ji...@apache.org> on 2011/04/20 21:11:05 UTC
[jira] [Commented] (COUCHDB-1103) Make vhost definitions not
order-dependent, remove variable matching
[ https://issues.apache.org/jira/browse/COUCHDB-1103?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13022309#comment-13022309 ]
Jan Lehnardt commented on COUCHDB-1103:
---------------------------------------
@Benoit, in line
+ DefaultPort = mochiweb_socket_server:get(couch_httpd, port),
did you mean s/mochiweb_socket_server/couch_config/?
If yes, here's a patch against 1.1.x that passes all etap tests for me reliably.
diff --git a/src/couchdb/couch_httpd_vhost.erl b/src/couchdb/couch_httpd_vhost.erl
index 3dba291..b64996a 100644
--- a/src/couchdb/couch_httpd_vhost.erl
+++ b/src/couchdb/couch_httpd_vhost.erl
@@ -329,10 +329,10 @@ bind_path(_, _) ->
%% create vhost list from ini
make_vhosts() ->
- lists:foldl(fun({Vhost, Path}, Acc) ->
- [{parse_vhost(Vhost), split_path(Path)}|Acc]
- end, [], couch_config:get("vhosts")).
-
+ Vhosts = lists:foldl(fun({Vhost, Path}, Acc) ->
+ [{parse_vhost(Vhost), split_path(Path)}|Acc]
+ end, [], couch_config:get("vhosts")),
+ lists:reverse(lists:usort(Vhosts)).
parse_vhost(Vhost) ->
case urlsplit_netloc(Vhost, []) of
@@ -350,15 +350,16 @@ parse_vhost(Vhost) ->
split_host_port(HostAsString) ->
+ DefaultPort = couch_config:get(couch_httpd, port),
case string:rchr(HostAsString, $:) of
0 ->
- {split_host(HostAsString), 80};
+ {split_host(HostAsString), DefaultPort};
N ->
HostPart = string:substr(HostAsString, 1, N-1),
case (catch erlang:list_to_integer(HostAsString, N+1,
length(HostAsString))) of
{'EXIT', _} ->
- {split_host(HostAsString), 80};
+ {split_host(HostAsString), DefaultPort};
Port ->
{split_host(HostPart), Port}
end
> Make vhost definitions not order-dependent, remove variable matching
> --------------------------------------------------------------------
>
> Key: COUCHDB-1103
> URL: https://issues.apache.org/jira/browse/COUCHDB-1103
> Project: CouchDB
> Issue Type: Bug
> Components: HTTP Interface
> Affects Versions: 1.1, 1.2
> Reporter: Jan Lehnardt
> Assignee: Benoit Chesneau
> Priority: Critical
> Fix For: 1.1
>
> Attachments: 0001-fix-COUCHDB-1103.-Order-results-and-make-sure-we-use.patch
>
>
> As per http://mail-archives.apache.org/mod_mbox/couchdb-dev/201103.mbox/%3cAANLkTin6zRiiFtKZoFa60DRVyOcF1dXzMYtNdKuX=ZRw@mail.gmail.com%3e
> Recording it here to not lose track.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira