Fresh install, no docker, Apache or nginx, cannot access web interface

Hello,

I just installed Seafile using the instructions located on the page called “using_sqlite.md” on the official website (for some reason I cannot post a link here).

I installed it on Ubuntu 18.04 and I don’t have Docker, Apache, or Nginx installed as I would like to use Seafile as “standalone”.

It seems to start correctly:

sebokie@xxx:~/seafile/seafile-server-7.0.5$ ./seafile.sh start
[11/12/19 23:06:23] …/common/session.c(132): using config file /home/sebokie/seafile/conf/ccnet.conf
Starting seafile server, please wait …
** Message: seafile-controller.c(718): No seafevents.

Seafile server started

Done.

sebokie@xxx:~/seafile/seafile-server-7.0.5$ ./seahub.sh start 19093

LC_ALL is not set in ENV, set to en_US.UTF-8
Starting seahub at port 19093 …

Seahub is started

Done.

However, when navigating to the URL where I assume the web interface should be located (http://<ip_address>:19093), I get a connection refused error in my browser.

Also, netstat -lntp shows that seaf-server is listening on 19092 but nothing is listening on 19093.

I checked in the logs in the logs folder and I can see that the seahub.log file stays as 0 bytes, although the other ones have non-null sizes.

  1. Should Seafile work in theory as I installed it or does it require a separate web server and database?
  2. If it should work, do you have some pointers as to how I could debug why seahub does not seem to work?

Thanks!

Hello,

I forgot to do the appropriate changes in ccnet.conf for SERVICE_URL and in gunicorn.conf for bind =.

Now it works.

Thanks!

I now have another problem.

I could get the client to upload files from Android.

However in the windows client I get “Cannot connect to server”.

This is especially weird since I can see the Windows machine in Seafile’s device interface.

Any help is appreciated.

If you run Seafile without Apache or nginx, you must always specify the port in the server address (8000).

PS: By using nginx as a reverse proxy, you don’t lose anything. But by using it, you gain a lot in terms of performance, security and flexibility.

Hello, and thanks for the answer,

I inputted the server address as such in the Seafile Windows client (as in Android):

http://<ip_address>:19093

Under “My Library” it is switching between “checking server info” and “Cannot connect to server”:

The IP address that I am using is from a server on the internet, not a local one, not sure if this is important.

What is weird is that on Android it works without problem.

I am not sure if the variables in Settings are correct:
SERVICE_URL : http://<ip_adress>:19093
FILE_SERVER_ROOT: http://<ip_adress>:19092

Regarding nginx, I don’t feel competent enough to use it since I cannot make Seafile work in the simplest use case (no separate web server and database).

Why did you choose to install Seafile with non-default ports? (I wasn’t paying attention to your ports earlier. Sorry, I should have spotted that earlier.)
Where did you specify the ports 19093 and 19092?
If I were you, I would reinstall Seafile server following the instructions in the manual or - if you have a decent command of German - these YouTube Videos. You will make your live so much easier!

I installed on other ports because the default ones were already used. I changed the ports in the files in conf/ subfolder as explained in the documentation:

Seafile 6.3.x and above versions

You can assign the port of Seahub by setting the conf/gunicorn.conf .

  • stop the Seafile server
./seahub.sh stop./seafile.sh stop
  • modify the value of SERVICE_URL in the file ccnet.conf, like this: (assume your ip or domain is 192.168.1.100). You can also modify SERVICE_URL via web UI in “System Admin->Settings”. ( Warning : if you set the value both via Web UI and ccnet.conf, the setting via Web UI will take precedence.)
SERVICE_URL = http://192.168.1.100:8001
  • modify the conf/gunicorn.conf
# default localhost:8000
bind = "0.0.0.0:8001"
  • restart Seafile server
./seafile.sh start./seahub.sh start

See Seafile Server Configuration Manual for more details about ccnet.conf .

Maybe I made a mistake there:

../conf/ccnet.conf

[General]
USER_NAME = seafile_server
ID = <hex_string>
NAME = seafile_server
SERVICE_URL = http://<ip_address>:19093

[Client]
PORT = 13419

../conf/gunicorn.conf:

import os

daemon = True
workers = 5

#default localhost:8000
bind = “0.0.0.0:19093”

# Pid
pids_dir = ‘/home/sebokie/seafile/pids’
pidfile = os.path.join(pids_dir, ‘seahub.pid’)

# for file upload, we need a longer timeout value (default is only 30s, too short)
timeout = 1200

limit_request_line = 8190

../conf/seafile.conf

[fileserver]
port=19092

What I don’t understand actually is why the client works on android but not on windows, although I used the same address and same port for the server.

Also another weird thing is that I can see both the windows and android devices in the Seafile admin interface, which seems to point to the fact that some communication is taking place also with the windows client.

I found out there is a windows log folder and can see the following error in seafile.log:

[11/13/19 21:14:25] http-tx-mgr.c(1261): Bad response code for GET http://<ip_address>:19093/seafhttp/protocol-version: 404.
[11/13/19 21:14:28] http-tx-mgr.c(783): libcurl failed to GET http://<ip_address>:8082/protocol-version: Couldn’t connect to server.

I think here it should not be trying to download something with libcurl on port 8082 since I am not using this port. Not sure what it is trying to do on port 19093.