Updating (and Deprecating) the Weave Minimal Server

With the release of Firefox 4 (yay!), the sync experience is much more integrated into the browser. However, some of the changes are problematic for the minimal server. There are a couple you may need to know about:

1) Because Firefox looks for some user functions, the setup process to access a minimal server is non-standard. It goes like this:

  1. register the account with the create_user script. This has been updated to understand email addresses as usernames and will correctly convert them to the base32-encoded equivalent. Note that this is not your sync key or anything like that. It’s just an encoding of your username.

    FF4 Sync no longer exposes the concept of a sync key, so this may be unfamilliar to people. Think of it as your ssh passphrase for Sync. It should be secure and reasonably long.

  2. in Firefox preferences, under sync, click on “Set Up Firefox Sync”
  3. Choose “I already have a Firefox Sync account”
  4. On the next screen, ignore all the nifty JPAKE stuff and click on “I don’t have the device with me” (You can use this for adding new devices to an already-configured account)
  5. The resulting screen will look like a connection screen you might expect. Make sure to select a custom server, and don’t forget the / at the end of your url if you use a prefix such as /weave/. You will need to know your secret Sync Key, but that’s no different than before.

That should be it!

2) There’s a new version of the minimal server. For many of you, this will not be a needed upgrade. However, it puts in new support for quota data, lets you use email addresses as usernames and addresses a few functions-in-parameters problems that some versions of php have. If you’re running smoothly right now, you may not want to upgrade, but if any of the above is giving you trouble, you can get it from hg ( in the weave_minimal directory) or grab the updated tarball.

This will almost certainly be the last update to the minimal server. This is not a change in philosophy – we’re still big believers that people should be able to host their own data – but a reflection of the fact that the python server is the future. There are several reasons for this:

  1. The python server provides the full set of functionality, including the user api.
  2. The python server is exactly the same codebase as we’re rolling out across Mozilla, which means we’ll only need to maintain one codebase moving forwards. It’s not just the minimal php server we’re deprecating. The full one will be going away as well.
  3. It’s almost as easy to set up as the minimal server, but gives you lots of tasty configuration options if you want to do more advanced things

You can check out and build the full server at http://hg.mozilla.org/services/server-full/ and get lots of details on how to build it at http://docs.services.mozilla.com/howtos/run-sync.html. We’d love to hear feedback you have on it.

Advertisement

73 Responses to “Updating (and Deprecating) the Weave Minimal Server”

  1. Philippe Says:

    Is there a migration path from the minimal server to the full server?

    • tobyelliott Says:

      There isn’t, but the sync client is designed to be self-healing. Just point it to the new install and it’ll do a full sync. You can also set up your account normally – no need to use the script associated with the minimal server

  2. Christoph Wiese Says:

    Hi Toby,

    thanks for your work on the (minimal) server and your continued support for user hosted sync servers.

    I was wondering if and where you will announce released versions of the python server, i.e. those that we are supposed to use. Will it be on this blog or on the mailing list[1], although that seems to have been mostly abandoned.

    Kind regards,
    Christoph Wiese

    [1] http://groups.google.com/group/mozilla-labs-weave-server-users

    • tobyelliott Says:

      If we make a change that’s api-incompatible, we’ll be bumping the server api version. If it’s internal-incompatible (which happened once before, but I think is unlikely to happen before a version bump), we’ll squawk about it a bunch and provide what we can to ease the transition.

      I’ll ask tarek to start tagging some versions for release. Tip should be pretty good most of the time, but we’ll start tagging ‘release’ versions that should be deemed stable.

  3. WladyX Says:

    Are there still problems with having webdav enabled on the server for the python server?
    Thanks for all the hard work!

    • tobyelliott Says:

      At a guess, yes. The WebDAV problem occurs before the code even gets to the php/python, as it intercepts some of the calls, so no amount of changing the code is going to affect that.

  4. WladyX Says:

    But with the minimal server i didn’t have any issues. Is there any workaround for this, except turning off the webdav :) ?
    PS: I have “Dav On” for a separate vhost, not for the webdav one, does this make any difference?

  5. Leho Kraav Says:

    I am running minimal with subversion dav on with no related issues.

    But I think it is time to move on to server-full anyway.

  6. Soloport Says:

    Android (e.g. Samsung Galaxy S) works flawlessly. If your site has a self-signed cert just visit your server’s URL (https:///1.0/blah/info/connections) and add a permanent SSL cert exception on your phone before first trying to connect.

    • Brad Says:

      Hey Soloport,

      Haven’t worked with wsgi python before, could anyone provide an example apache config including ssl?

  7. Errikos Says:

    Where can I find the synckey the FF4 asks in step 5; I searched through the previous article but did not find anything…
    Thank you very much!

    • tobyelliott Says:

      Think of it like an ssh passphrase. If it’s the first client you’re setting up, you can make it whatever you like, just remember it for the future!

  8. 1of16 Says:

    The pythonserver looks kinda nice, nevertheless the installation is a pain in the ass…I have to install many useless python packages (e.g. ldap) :(
    but I can’t use it cause of this error:
    ProgrammingError: (ProgrammingError) (1146, “Table ‘sync.wbo’ doesn’t exist”) ‘SELECT wbo.collection, max(wbo.modified) AS max_1 \nFROM wbo \nWHERE wbo.username = %s AND wbo.ttl > %s GROUP BY wbo.username, wbo.collection’ (1L, 1301335999)
    there are just the tables “users” and “reset_codes”
    or is there another site to post it??

    but keep up the good work….i wanna use it soon ;)

  9. PsychoWood Says:

    Does this new server version support sqlite?

  10. Bart Grantham Says:

    So I spent all weekend hacking up the PHP Weave server to support PostgreSQL, got most of the way there, then discovered this post on Sunday night. So before I continue I should probably ask what is the best way to contribute PG support to whatever the “main” Weave server is going to be going forward. Also, should I even bother filing bugs or submitting patches for the PHP server?

    • tobyelliott Says:

      python server already supports postgres, so yay!

      You are welcome to file bugs against the php server – it’s going away as part of our infrastructure, but I’ll do what I can to support it for a while.

  11. Adam Says:

    You mention the python server is being rolled out. Are there any documents or how-tos posted for it yet?

    I am wanting to host my own server, but I do not want to start with a server that has been deprecated.

    I made the assumption that http://hg.mozilla.org/services/minimal-server/file/5ee9d9a4570a/weaveserver-python was the correct python server, but I would like some verification and/or some documentation as to how it needs to be setup.

    Thanks!

    • tobyelliott Says:

      Nope, that’s not the right one. Really need to pull that from that repo. You want the server-full link in the post. There’s a README in that that should walk you through the main parts of the install.

  12. Oliver Says:

    Has this been tested without MySQL installed (or wanted?) Also I read a mention that the python server already supports postgres, but I find no reference to this in the source.

    Currently I’m getting the following:

    [Tue Mar 29 15:29:37 2011] [error] [client 127.0.0.1] File “/var/www/weave/weave_full/lib/python2.6/site-packages/SQLAlchemy-0.6.6-py2.6.egg/sqlalchemy/engine/strategies.py”, line 66, in create
    [Tue Mar 29 15:29:37 2011] [error] [client 127.0.0.1] dbapi = dialect_cls.dbapi(**dbapi_args)
    [Tue Mar 29 15:29:37 2011] [error] [client 127.0.0.1] File “/var/www/weave/weave_full/lib/python2.6/site-packages/SQLAlchemy-0.6.6-py2.6.egg/sqlalchemy/dialects/mysql/mysqldb.py”, line 107, in dbapi
    [Tue Mar 29 15:29:37 2011] [error] [client 127.0.0.1] return __import__(‘MySQLdb’)
    [Tue Mar 29 15:29:37 2011] [error] [client 127.0.0.1] ImportError: No module named MySQLdb

    I just wish to use simple sqlite based server, but this doesn’t seem to be possible yet …

  13. Robert Chadwick Says:

    I was working through installing the minimal server, when I found it was being depreciated. I’d rather install the python server, but I’m running Windows. While I appreciate your efforts to create a free sync server, I think it will be almost impossible, at least for me, to use it without some kind of documentation. Where should I put the files? What dependencies do I need to install? Does this require MySQL? Does it work with Apache, or is it it’s own webserver? Any help, info, walkthroughs, or other advice would be greatly, greatly appreciated!

  14. Robert Chadwick Says:

    Well, I set up Python best I could figure. I get an Access Forbidden when trying to run setup.py (It’s been a while since I configured this server, don’t remember how or if I got it to run scripts). When I run setup.py from the command line, I get:

    Traceback (Most recent call last) :
    File “c:\website\weave\setup.py”, Line 36, in (module)
    from setuptools import setup
    ImportError: No module named setuptools

    Any help greatly appreciated!

  15. Firefox Sync mit eigenem Server « Mein PC spinnt! Says:

    [...] Download der neuen Datein => entpacken => drüber kopieren => Fertig [...]

  16. Steve Bainbridge Says:

    After failing to get the minimal server to work I thought I would give this a go, especially since the minimal server days are numbered. I pulled the source files and installed the required packages, but it failed to build on a clean VM of Ubuntu 10.10 (full log is at; http://paste.ubuntu.com/587560/) :


    Searching for coverage
    Reading http://pypi.python.org/simple/coverage/
    Reading http://nedbatchelder.com/code/modules/coverage.html
    Reading http://nedbatchelder.com/code/coverage
    Reading http://nedbatchelder.com/code/coverage/3.4b1
    Reading http://nedbatchelder.com/code/coverage/3.4b2
    Best match: coverage 3.4
    Downloading http://pypi.python.org/packages/source/c/coverage/coverage-3.4.tar.gz#md5=46782809578c8fd29912c124d2420842
    Processing coverage-3.4.tar.gz
    Running coverage-3.4/setup.py -q bdist_egg –dist-dir /tmp/easy_install-R60F1t/coverage-3.4/egg-dist-tmp-NtdCXQ
    no previously-included directories found matching ‘test’
    coverage/tracer.c:3: fatal error: Python.h: No such file or directory
    compilation terminated.
    error: Setup script exited with error: command ‘gcc’ failed with exit status 1
    make: *** [build] Error 1

    • Brad Says:

      Howdy Steve,
      I had to install the following packages to complete the build on Ubuntu.

      sudo aptitude install python-dev libldap-dev libsasl2-dev libssl-dev python-profiler python-virtualenv libmysqlclient-dev

    • 1of16 Says:

      you need to install the following packages:

      python
      python-dev
      python-profiler
      python-virtualenv
      python-ldap
      libmysqlclient-dev
      libldap-dev / libldap2-dev
      libsasl2-dev
      libssl-dev
      mercurial

      sqlite3 (if you wanna use sqllite)
      mysql-server (if you wanna use mysql)

      • Steve Bainbridge Says:

        Thanks guys for that. I’m moving forward…slowly.

        It now builds OK and it works OK using the built-in server, but when I try to use it with Apache2 it fails. I installed the mod_wsgi module and used a similar Virtual Host as specified in the README, but it seems to be failing with LDAP:

        [Fri Apr 01 20:10:49 2011] [error] File “/home/steve/server-full-f57f499dbd7b/lib/python2.6/site-packages/python_ldap-2.3.12-py2.6-linux-i686.egg/ldap/ldapobject.py”, line 781, in simple_bind_s
        [Fri Apr 01 20:10:49 2011] [error] return SimpleLDAPObject.simple_bind_s(self,*args,**kwargs)
        [Fri Apr 01 20:10:49 2011] [error] File “/home/steve/server-full-f57f499dbd7b/lib/python2.6/site-packages/python_ldap-2.3.12-py2.6-linux-i686.egg/ldap/ldapobject.py”, line 206, in simple_bind_s
        [Fri Apr 01 20:10:49 2011] [error] msgid = self.simple_bind(who,cred,serverctrls,clientctrls)
        [Fri Apr 01 20:10:49 2011] [error] File “/home/steve/server-full-f57f499dbd7b/lib/python2.6/site-packages/python_ldap-2.3.12-py2.6-linux-i686.egg/ldap/ldapobject.py”, line 200, in simple_bind
        [Fri Apr 01 20:10:49 2011] [error] return self._ldap_call(self._l.simple_bind,who,cred,EncodeControlTuples(serverctrls),EncodeControlTuples(clientctrls))
        [Fri Apr 01 20:10:49 2011] [error] File “/home/steve/server-full-f57f499dbd7b/lib/python2.6/site-packages/python_ldap-2.3.12-py2.6-linux-i686.egg/ldap/ldapobject.py”, line 96, in _ldap_call
        [Fri Apr 01 20:10:49 2011] [error] result = func(*args,**kwargs)
        [Fri Apr 01 20:10:49 2011] [error] LDAPError: LDAP connection invalid

        Any ideas ?

        Steve

      • tobyelliott Says:

        Are you intending to use LDAP? That’s a bit unlikely. I suspect you want to swap files in the etc directory for the mysql or sqlite config.

      • Steve Bainbridge Says:

        I’m using the default config in the etc directory and that uses SQLite. However, the default sync.wsgi uses; tests_memcachedldap.ini. Changing it to tests.ini then uses SQLite and it seems to work !

        Cheers

  17. balu Says:

    a great pity that php weave server will be deprecated,
    but thanks for the information

  18. codydunne Says:

    I’m using the full version on Ubuntu 10.04 with apache2. I changed sync.wsgi to use tests.ini and sqlite.conf. Firefox doesn’t recognize the server, and in the error logs I see this message after restarting apache2:

    [Thu Apr 07 00:35:48 2011] [error] Exception KeyError: KeyError(140582990763840,) in ignored

    Any tips for a bare-bones installation?

    Thanks!

    • codydunne Says:

      Do I have to create the sqlite database ahead of time? How much of the config should I have edited?

      • 1of16 Says:

        I’m using a similar setup, but with mysql.
        in line 66 of the sync.wsgi you need to specify the _right_ ini you wanna use, in the ini you need to specify the conf in the etc folder and dont forget the apache-settings. and you need to add a usergroup called “sync”

        but i never saw your error before….and i had some problems myself too ;)
        are you sure your apache error is in relation to the python sync server?

  19. Green Wolf Says:

    I’m new to “Weave Minimal Server” and have difficulties getting it to work correctly.

    I installed it as instructed in README:
    1. Configured apache (alias and also directive to “allow from all” and enable php for the directory). Restarted it.
    2. Pointed Firefox at https://…/weave/1.0/blah/info/collections (blah/garbage). weave_db was successfully created.
    3. Created a new user by running create_user. Got ” created” message.

    But when I try to Sign In with Firefox (Sync Setup), I receive “Incorrect account name or password” error. I have tried using both plain-text email as account and the output of create_user (base32-encoded? string). URL of server has slash in the end (https://…/weave/).

    What am I doing wrong?

    • tobyelliott Says:

      Hmm, looks like everything is hooked up correctly (and you should be using the original email address, not the base32 version). Try creating a user that isn’t an email address and seeing if that one works.

      • Green Wolf Says:

        Thank you for your quick reply.

        I tried it, but with same results – still getting “Incorrect account name or password” message.

  20. Memo: Weave-minimal server | from where i live… Says:

    [...] http://tobyelliott.wordpress.com/2011/03/25/updating-and-deprecating-the-weave-minimal-server/ [...]

  21. Marcel Says:

    > The pythonserver looks kinda nice, nevertheless the installation is a pain in the ass…

    I sadly have to agree. The beauty of the minimal-server is that almost everyone has php/fcgi or another php variant already setup in the webserver so installing the php-server is very simple copy into www-path and edit the ini.

    Now to the python server. That first requires installing more components such as in my case mercurial and virtualenv. Then a make build. Then installing flup as a glue between python and fcgi. So far, so complicated already.

    But then? How do I configure lighttpd/fcgi/flup to use the python server? The README does not contain any instructions about that yet and if you are not yet using python for your lighttpd then this is not straightforward.
    Any docu anywhere?

    • Tarek Ziadé Says:

      The README does not contains any instruction for fcgi because the most common installations are Apache + mod_wsgi or Nginx + Gunicorn and are pretty staightforward.

      Using fcgi is a litlle bit more exotic in the Python land, and is more complicated to set up.

      You can follow this old-but-still-valid tutorial http://wiki.pylonshq.com/display/pylonscookbook/Running+Pylons+with+SCGI+and+Lighttpd and edit the developement .ini file in the Sync server, in order to use flup.

      Just skip the make-config step, and I encourage you to come find me on the Mozilla IRC #sync (my nick is tarek) so I can help you there.

      Once we get your setup working, we can complete the README with a flup-based configuration example.

      HTH

      • Marcel Says:

        Hi Tarek,

        thanks for the help. In the end the lighthttp/fcgi/flup/python setup isn’t really that complicated once one knows how it works. 8-;
        Good that we got it working and documented it now.

    • Matěj Cepl Says:

      > It’s almost as easy to set up as the minimal server, …

      You, sir, are living in the alternate universe. Not only I have never managed to make Python server working on the rather plain vanilla RHEL-6, but also I feel acute feeling of disgust over poorly undocumented piece of code which never states perfectly its software requirements and during the installation it pulls in random piece of junk^H^H^H^Hcode from around the Internet. Could you please provide COMPLETE tarball with ALL external dependencies cleanly listed?

      Sorry, for ranting, but I would really love to use my own sync server, but now I have a choice between soon-to-be-obsoleted PHP server and this monstrosity, which doesn’t work for me anyway.

  22. Mario 'BitKoenig' Holbe Says:

    Hello Toby,

    while considering an upgrade of the Weave Minimal Server I noticed some database schema changes in the wbo table between the old (2009-11-27) and the new release:
    ttl int,

    Is there a recommended upgrade path for the last minimal server update?

  23. Den eigene Weave Firefox Sync Server updaten - Firefox Sync Server, Firefox-Sync, Weave Minimal Server, Firefox, Server, User - Die Datenreisenden Says:

    [...] Kommentar in meiner damaligen Anleitung, bin ich erst aufmerksam geworden, dass es bei Tapstry eine neue Version des Weave Minimal Server gibt. Da das Update beim ersten mal nicht gleich so passte, hier eine kleine [...]

  24. Holger M. Says:

    I tried the new python-based server. It uses A LOT of memory. After a fresh start (with an already-synced db file) it starts with 23 MB used (resident) and 606 virtual. When I trigger the sync via “Extras/Sync now”, RAM usage grows:
    manual sync #1: 32 MB resident
    manual sync #2: 38 MB resident
    manual sync #3: 41 MB
    and then 43, 46, 49, 52 MB
    It never stops! Am I the only person with this problem?

  25. 1of16 Says:

    Now with FF5 won’t work with the Python-Weave-Server!

    [Tue Jun 21 18:31:29 2011] [error] 2011-06-21 18:31:29,553 INFO [syncserver] 87.151.x.x – - [21/Jun/2011:18:31:29 +0200] “GET /1.1/e7iseanv66ds3yi3zhr5aab5nhewixx2/info/collections HTTP/1.1″ 404 154 “-” “Firefox/5.0 FxSync/1.8.0.20110615151330.desktop”
    [Tue Jun 21 18:31:29 2011] [error] 87.151.67.190 – - [21/Jun/2011:18:31:29 +0200] “GET /1.1/e7iseanv66ds3yi3zhr5aab5nhewixx2/info/collections HTTP/1.1″ 404 154 “-” “Firefox/5.0 FxSync/1.8.0.20110615151330.desktop”
    [Tue Jun 21 18:31:29 2011] [error] 2011-06-21 18:31:29,613 INFO [syncserver] 87.151.x.x – - [21/Jun/2011:18:31:29 +0200] “GET /user/1.0/e7iseanv66ds3yi3zhr5aab5nhewixx2/node/weave HTTP/1.1″ 200 32 “-” “Firefox/5.0 FxSync/1.8.0.20110615151330.desktop”
    [Tue Jun 21 18:31:29 2011] [error] 87.151.67.190 – - [21/Jun/2011:18:31:29 +0200] “GET /user/1.0/e7iseanv66ds3yi3zhr5aab5nhewixx2/node/weave HTTP/1.1″ 200 32 “-” “Firefox/5.0 FxSync/1.8.0.20110615151330.desktop”

  26. christianebuddy Says:

    Same here:

    It’s still not working for me, I’ve got it working with FF4, but I get 404 errors with FF5 attempting to hit the 1.1 URLs. This is on the minimal weave server

    The same happens on the full server install

  27. christianebuddy Says:

    No it does not solve it….

  28. WladyX Says:

    Do you know when it is planned to implement addons sync?
    Thanks for any info.

  29. erweiterung des Weave Minimal Servers – FSyncMS 0.5 | ohneKontur - der Blog Says:

    [...] Umso mehr bedauerte ich, als ich lesen musste, dass der Support für den Weave-Minimal Server eingestellt wird. [...]

  30. Firefox 5, Cherokee and the Firefox Sync Server Says:

    [...] article links to the blog of Toby Elliot, who is responsible for the Minimal version of the sync server. However, he states that there will [...]

  31. Dirk Says:

    okay… i tried the weave minimal server from march and it doesn’t work… there is not a single word what the url of a custom sync server has to look like and there is jibberish all over the place that the weave minimal server from march is deprecated…
    and then there is another weave server that uses python and it doesn’t work either…

    it is complete chaos spread over several webpages…

    will i have to continue using subversion to sync my bookmarks? :(

  32. Patrick Says:

    Hi,

    I am stuck at the beginning of the tutorial. Therefore I created a simple test file in order to check if at least PHP and SQLite are running.

    Windows XP
    MicroApache 2.0.64 + PHP 5.2.17 + SQLite

    1.
    httpd.conf:
    [...]
    Alias /weave firefox-sync/minimal/index.php
    [...]

    Directly calling a simple “http://localhost:8800/firefox-sync/minimal/test.php” and writing an SQL file works:

    Loading the page successfully creates the DB file.

    2.
    Calling “https://localhost:8800/weave/1.0/blah/info/collection” leads to the following error:
    “An error occurred during a connection to localhost:8800. SSL received a record that exceeded the maximum permissible length. (Error code: ssl_error_rx_record_too_long)”

    3.
    Calling “http://localhost:8800/weave/1.0/blah/info/collection” leads to the following error:
    “Forbidden You don’t have permission to access /weave/1.0/blah/info/collection on this server.”

    4.
    I tried a modification of the alias command as suggested in the post
    http://tobyelliott.wordpress.com/2009/09/11/weave-minimal-server/#comment-98

    httpd.conf:
    [...]
    AliasMatch ^/weave.* /firefox-sync/minimal/index.php
    [...]

    “Not Found The requested URL /weave/1.0/blah/info/collection was not found on this server.”

    Can you help me?

    • tobyelliott Says:

      I don’t have an obvious or immediate answer, but the two things that stick out are :

      *calling http://localhost:8800/firefox-sync/minimal/test.php shouldn’t do anything other than give you a 404 (that’s not where the alias points)
      *the SSL error suggests that there’s something pretty horked with the SSL connection.

      • Patrick Says:

        Why should the call in 1.) give me a 404?
        I checked it and it performs the expected operations, as described in my initial posting.
        I forward “weave” and not “firefox-sync” and therefore the URL does not get forwarded, does it?

      • tobyelliott Says:

        Right. the call in (1) is going to /firefox-sync, which is not the alias. I would expect your Apache to return a 404 as a result.

      • Patrick Says:

        The DocumentRoot is “c:/webroot”. I put the files of the minimal server archive into the directory “C:\webroot\firefox-sync\minimal”. Therefore it does find the file as it is supposed to.

  33. Patrick Says:

    The DocumentRoot is “c:/webroot”. I put the files of the minimal server archive into the directory “C:\webroot\firefox-sync\minimal”.

  34. Cyber1000 Says:

    Just came here along, cause I wanted to setup a own server. Minimal server worked out of the box (if you know how to enter credentials/server in firefox). I’ve came along https://wiki.mozilla.org/Labs/Weave/Sync/1.0/Setup#Setting_up_the_Server, is this site out of sync? Cause it still recommends the minimal server …

  35. Cyber1000 Says:

    Wow you are very fast. The link I posted is the first if you enter “sync server firefox” or “weave server” in google. Sorry I think I missed the link at the ending of your post or thought it’s the same. Someone should make a redirection from the old to the new doc. Thanks again …

  36. Firefox Sync mit eigenem Server | widhalm or.at.orium Says:

    [...] Die aktuelle, und vorerst letzte Version des weave-minimal findet man über diesen Blogartikel. [...]

  37. beat Says:

    Hi, since Firefox 6 the minimal server seems to fail definitive. Can somebody confirm this. Anyway thanks Toby for the effort. Switching to full server next days…

  38. no-ones-mouse Says:

    Made a change, and now have this error:
    [Mon Sep 26 15:06:18 2011] [error] [client 1.2.3.4] File does not exist: /www/roundcube/weave_minimal/index.phpuser
    [Mon Sep 26 15:06:18 2011] [error] [client 1.2.3.4] File does not exist: /www/roundcube/weave_minimal/index.php1.0
    [Mon Sep 26 15:06:18 2011] [error] [client 1.2.3.4] File does not exist: /www/roundcube/weave_minimal/index.phpuser

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.