diff --git a/doc/FAQ.txt b/doc/FAQ.txt
index da86570c0c5d5b8f36c067d0bfe4067c3422ff9d..0bb580ca34dd745134e9826f16370e161439c757 100644 (file)
--- a/doc/FAQ.txt
+++ b/doc/FAQ.txt
Roundup FAQ
===========
-:Version: $Revision: 1.13 $
-
.. contents::
Living without a mailserver
~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Remove the nosy reactor, means delete the tracker file
+Remove the nosy reactor - delete the tracker file
``detectors/nosyreactor.py`` from your tracker home.
Yep, it sure is. It has to start up Python and load all of the support
libraries for *every* request.
-The solution is to use the built in server.
+The solution is to use the built in server (or possibly the mod_python
+or WSGI support).
To make Roundup more seamless with your website, you may place the built
-in server behind apache and link it into your web tree
+in server behind apache and link it into your web tree (see below).
How do I put Roundup behind Apache
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-We have a project (foo) running on ``foohost.com:8888``.
-We want ``http://foohost.com/FooIssues`` to use the roundup server, so we
-set that up on port 8888 on ``foohost.com`` with the ``config.py`` line::
+We have a project (foo) running on ``tracker.example:8080``.
+We want ``http://tracker.example/issues`` to use the roundup server, so we
+set that up on port 8080 on ``tracker.example`` with the ``config.ini`` line::
- TRACKER_WEB = 'http://foohost.com/FooIssues/'
+ [tracker]
+ ...
+ web = 'http://tracker.example/issues/'
We have a "foo_issues" tracker and we run the server with::
- roundup-server -p 8888 foo_issues=/home/roundup/trackers/foo_issues
+ roundup-server -p 8080 issues=/home/roundup/trackers/issues
Then, on the Apache machine (eg. redhat 7.3 with apache 1.3), in
``/etc/httpd/conf/httpd.conf`` uncomment::
Then add::
+ # roundup stuff (added manually)
+ <IfModule mod_proxy.c>
+ # proxy through one tracker
+ ProxyPass /issues/ http://tracker.example:8080/issues/
+ # proxy through all tracker(*)
+ #ProxyPass /roundup/ http://tracker.example:8080/
+ </IfModule>
+
+Then restart Apache. Now Apache will proxy the request on to the
+roundup-server.
+
+Note that if you're proxying multiple trackers, you'll need to use the
+second ProxyPass rule described above. It will mean that your TRACKER_WEB
+will change to::
+
+ TRACKER_WEB = 'http://tracker.example/roundup/issues/'
+
+Once you're done, you can firewall off port 8080 from the rest of the world.
+
+Note that in some situations (eg. virtual hosting) you might need to use a
+more complex rewrite rule instead of the simpler ProxyPass above. The
+following should be useful as a starting template::
+
# roundup stuff (added manually)
<IfModule mod_proxy.c>
RewriteEngine on
# General Roundup
- RewriteRule ^/Roundup$ Roundup/ [R]
- RewriteRule ^/Roundup/(.*) http://foohost.com:8888/$1 [P]
-
- # Redirect to Foo Issues
- RewriteRule ^/Roundup/foo_issues(.*) FooIssues$1 [R]
+ RewriteRule ^/roundup$ roundup/ [R]
+ RewriteRule ^/roundup/(.*)$ http://tracker.example:8080/$1 [P,L]
# Handle Foo Issues
- RewriteRule ^/FooIssues$ FooIssues/ [R]
- RewriteRule ^/FooIssues/(.*) http://foohost.com:8888/foo_issues/$1 [P]
+ RewriteRule ^/issues$ issues/ [R]
+ RewriteRule ^/issues/(.*)$ http://tracker.example:8080/issues/$1 [P,L]
</IfModule>
-Then restart Apache. Now Apache will proxy the request on to the
-roundup-server.
-You need to add the last 3 RewriteRule lines for each tracker that you have.
+How do I run Roundup through SSL (HTTPS)?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-You can now firewall off port 8888 from the rest of the world.
+The preferred way of using SSL is to proxy through apache and use its
+SSL service. See the previous question on how to proxy through apache.
+
+The standalone roundup-server now also has SSL support which is still
+considered experimental. For details refer to the documentation of
+roundup server, in particular to the generated configuration file
+generated with ::
+
+ roundup-server --save-config
+
+that describes the needed option in detail. With the standalone server
+now XMLRPC over SSL works, too.
+
+
+Roundup runs very slowly on my XP machine when accessed from the Internet
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The issue is probably related to host name resolution for the client
+performing the request. You can turn off the resolution of the names
+when it's so slow like this. To do so, edit the module
+roundup/scripts/roundup_server.py around line 77 to add the following
+to the RoundupRequestHandler class::
+
+ def address_string(self):
+ return self.client_address[0]
Templates
enough "Zope Page Templates". There's documentation in the Roundup
customisation_ documentation. For more information have a look at:
- http://www.zope.org/Documentation/Books/ZopeBook/current/contents
+ http://www.zope.org/Documentation/Books/ZopeBook/2_6Edition/
-specifically chapter 5 "Using Zope Page Templates" and chapter 9 "Advanced
+specifically chapter 10 "Using Zope Page Templates" and chapter 14 "Advanced
Page Templates".
But I just want a select/option list for ....
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Really easy... edit ``html/issue.item``. For 'nosy', change line 53 from::
+Really easy... edit ``html/issue.item.html``. For ``nosy``, change the line
+(around line 69) from::
<span tal:replace="structure context/nosy/field" />
<span tal:replace="structure context/nosy/menu" />
-For 'assigned to', change line 61 from::
-
- <td tal:content="structure context/assignedto/field">assignedto menu</td>
-
-to::
+For ``assigned to``, this is already done around line 77::
<td tal:content="structure context/assignedto/menu">assignedto menu</td>
Thats a little harder (but only a little ;^)
-Again, edit ``html/issue.item``. For nosy, change line 53 from:
+Again, edit ``html/issue.item``. For nosy, change line (around line 69) from::
<span tal:replace="structure context/nosy/field" />
I keep getting logged out
~~~~~~~~~~~~~~~~~~~~~~~~~
-Make sure that the TRACKER_WEB setting in your tracker's config.py is set
-to the URL of the tracker.
+Make sure that the ``tracker`` -> ``web`` setting in your tracker's
+config.ini is set to the URL of the tracker.
+
+I'm getting infinite redirects in the browser
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+A wrong value for the ``tracker`` -> ``web`` setting may also result in
+infinite redirects, see http://issues.roundup-tracker.org/issue2537286
+
+
+How is sorting performed, and why does it seem to fail sometimes?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+When we sort items in the hyperdb, we use one of a number of methods,
+depending on the properties being sorted on:
------------------
+1. If it's a String, Number, Date or Interval property, we just sort the
+ scalar value of the property. Strings are sorted case-sensitively.
+2. If it's a Link property, we sort by either the linked item's "order"
+ property (if it has one) or the linked item's "id".
+3. Mulitlinks sort similar to #2, but we start with the first
+ Multilink list item, and if they're the same, we sort by the second item,
+ and so on.
-Back to `Table of Contents`_
+Note that if an "order" property is defined on a Class that is used for
+sorting, all items of that Class *must* have a value against the "order"
+property, or sorting will result in random ordering.
-.. _`Table of Contents`: index.html
-.. _`customisation`: customisation.html
+.. _`customisation`: customizing.html