# Running Cells in addition to Apache on Debian Buster

**URL:** <https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872>\
**Category:** Pydio Cells\
**Tags:** install\
**Created:** [May 26, 2021, 10:38am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872 "2021-05-26T10:38:35Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![matthewoliver](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/matthewoliver/32/370_2.png) [@matthewoliver](https://forum.pydio.com/u/matthewoliver)\
**Post date:** [May 26, 2021, 10:38am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/1 "2021-05-26T10:38:35Z")

</div>

Hi guys!

I’ve been running pydio for a number of years without issues. When cells was released I tried to upgrade several times with to no avail…  
Today, I’ve got a new server, so instead of rsyncing everything from old to new, I’ve decided to start with a fresh install. I’m hosting a website with Apache and would like to serve/transfer files with cells. Install went fine but I’m struggling with running both Apache and cells on the same machine. I always end up with “bind address already in use”. My guess is I need to use a reverse proxy, but I have no idea how…

Help would be greatly appreciated!

Thanks!

---

<div class="post-metadata">

**Author:** ![zayn](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zayn](https://forum.pydio.com/u/zayn)\
**Post date:** [May 27, 2021, 2:22pm UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/2 "2021-05-27T14:22:26Z")

</div>

Hello @matthewoliver ,

Cells has an embedded webserver, by default it will bind on `0.0.0.0:443` if you wish to use this port with apache, I would advise you to run the command `./cells configure sites` and change the bind port to for instance `8080` then in your Apache reverse proxy config you can proxy the requests to `localhost:8080`.

If was not clear do not hesitate to ping me for me details.

---

<div class="post-metadata">

**Author:** ![matthewoliver](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/matthewoliver/32/370_2.png) [@matthewoliver](https://forum.pydio.com/u/matthewoliver)\
**Post date:** [May 28, 2021, 5:34am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/3 "2021-05-28T05:34:11Z")

</div>

Hi @zayn, thanks for the reply. Following the reverse-proxy docs, I added a new virtualhost. Can’t paste it here as I can’t post more than 2 links (because I’m a noob apparently)

But now I’m getting this error: Your browser sent a request that this server could not understand.  
Reason: You’re speaking plain HTTP to an SSL-enabled server port.  
Instead use the HTTPS scheme to access this URL, please.  
And in pydio output I get this: INFO pydio.gateway.proxy Service failed to start - restarting in 10s {“error”: “ErrServiceStartNeedsRetry - listen tcp :8080: bind: address already in use”}

---

<div class="post-metadata">

**Author:** ![zayn](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zayn](https://forum.pydio.com/u/zayn)\
**Post date:** [May 31, 2021, 9:18am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/4 "2021-05-31T09:18:14Z")

</div>

Hello @matthewoliver ,

it is indicating that the port 8080 is already used, make sure that the port is free and not bound to any software otherwise you can set another port with the command: `./cells configure sites`.

Here are 2 samples to illustrate a simple apache2 + cells setup.

Assuming that I have the following configuration on Cells  
(you can swap the port **8080** by any port of your choice)

```auto
pydio@cells-test:~$ ./cells configure sites
The following sites are currently defined:
+---+-----------------------+--------+------------------------------------------------+
| # | BIND(S) | TLS | EXTERNAL URL |
+---+-----------------------+--------+------------------------------------------------+
| 0 | http://localhost:8080 | No Tls | https://my-reverse-proxy.eu |
+---+-----------------------+--------+------------------------------------------------+

```

and apache2 conf

```auto
<VirtualHost *:80>
    ServerName my-reverse-proxy.eu.eu
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

RewriteCond %{SERVER_NAME} =cells-staging.your-files-your-rules.eu
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

<VirtualHost *:443>
    ServerName my-reverse-proxy.eu.eu
    AllowEncodedSlashes On
    RewriteEngine On

    ProxyPass / http://localhost:8080/ nocanon
    ProxyPassReverse / http://localhost:8080/ nocanon

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    SSLCertificateFile /etc/letsencrypt/live/my-reverse-proxy.eu/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/my-reverse-proxy.eu/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>

```

The certificate directives are created by [certbot](https://certbot.eff.org/), but it will give you a global view of the setup.

Also make sure to add the websocket reverse proxy directives, see our documentation:

- [Running Cells behind an Apache reverse proxy | Pydio](https://pydio.com/en/docs/kb/deployment/running-cells-behind-apache-reverse-proxy)

---

<div class="post-metadata">

**Author:** ![matthewoliver](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/matthewoliver/32/370_2.png) [@matthewoliver](https://forum.pydio.com/u/matthewoliver)\
**Post date:** [June 1, 2021, 10:11am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/5 "2021-06-01T10:11:07Z")

</div>

Hi @zayn, thanks for your help!  
Still getting errors… but I’ll keep trying!

---

<div class="post-metadata">

**Author:** ![zayn](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zayn](https://forum.pydio.com/u/zayn)\
**Post date:** [June 16, 2021, 10:23am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/6 "2021-06-16T10:23:16Z")

</div>

Hello @matthewoliver ,

Did you manage to have your install running or are you still having issues, if that is the case would like more help ?

---

<div class="post-metadata">

**Author:** ![matthewoliver](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/matthewoliver/32/370_2.png) [@matthewoliver](https://forum.pydio.com/u/matthewoliver)\
**Post date:** [June 16, 2021, 2:30pm UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/7 "2021-06-16T14:30:34Z")

</div>

Hi @zayn,

Thanks for your reply! I’m actually still struggling… Is there a way I can send you my httpd.conf? So you can help me add the necessary directives to allow cells in a reverse apache2 proxy?

---

<div class="post-metadata">

**Author:** ![bsinou](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/bsinou/32/476_2.png) [@bsinou](https://forum.pydio.com/u/bsinou)\
**Post date:** [June 21, 2021, 7:54am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/8 "2021-06-21T07:54:25Z")

</div>

Hello @matthewoliver

we try to avoid private communication for problem solving, so that the errors of some can benefit others.  
(it is another story if you subscribe to our support service 😉 )

Anyway, do you have any errors in your apache logs when you try to reach the server ?  
Could you first try to manage exposing a simple webpage with SSL behind your apache reverse proxy ?

---

<div class="post-metadata">

**Author:** ![matthewoliver](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/matthewoliver/32/370_2.png) [@matthewoliver](https://forum.pydio.com/u/matthewoliver)\
**Post date:** [June 21, 2021, 8:20am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/9 "2021-06-21T08:20:36Z")

</div>

Hi @bsinou,

As a “newbie”, I can’t post more than 2 links (either logs or httpd.conf contain more than 2 links…) hence wanting to send either to @zayn via pm to avoid forum restrictions. That doesn’t prevent me from publicly posting the solution when it is found!

---

<div class="post-metadata">

**Author:** ![matthewoliver](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/matthewoliver/32/370_2.png) [@matthewoliver](https://forum.pydio.com/u/matthewoliver)\
**Post date:** [June 25, 2021, 7:00am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/10 "2021-06-25T07:00:26Z")

</div>

Here’s my default.conf:

VirtualHost [matthewoliver.fr:443](http://matthewoliver.fr:443)  
# The ServerName directive sets the request scheme, hostname and port that  
# the server uses to identify itself. This is used when creating  
# redirection URLs. In the context of virtual hosts, the ServerName  
# specifies what hostname must appear in the request’s Host: header to  
# match this virtual host. For the default virtual host (this file) this  
# value is not decisive as it is used as a last resort host regardless.  
# However, you must set it for any further virtual host explicitly.  
#ServerName [www.example.com](http://www.example.com)

```
ServerAdmin webmaster@matthewoliver.fr
    ServerName matthewoliver.fr

```

#AllowEncodedSlashes On  
#RewriteEngine On  
#ProxyPass / [http://localhost:9000/](http://localhost:9000/) nocanon  
#ProxyPassReverse / [http://localhost:9000/](http://localhost:9000/) nocanon  
#Redirect / [https://matthewoliver.fr/](https://matthewoliver.fr/)

#Available loglevels: trace8, …, trace1, debug, info, notice, warn,  
#error, crit, alert, emerg.  
#It is also possible to configure the loglevel for particular  
#modules, e.g.  
#LogLevel info ssl:warn

```
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
    DocumentRoot /var/www
    SSLEngine on
    SSLProtocol +TLSv1.2 +TLSv1.3
    SSLCertificateFile /etc/webmin/letsencrypt-cert.pem
    SSLCertificateKeyFile /etc/webmin/letsencrypt-key.pem
    SSLCACertificateFile /etc/webmin/letsencrypt-ca.pem

#For most configuration files from conf-available/, which are
#enabled or disabled at a global level, it is possible to
#include a line for only one particular virtual host. For example the
#following line enables the CGI configuration for this host only
#after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf

```

#Proxy WebSocket  
#RewriteCond %{HTTP:Upgrade} =websocket [NC]  
#RewriteRule /(._) wss://127.0.0.1:8080/$1 [P,L]  
 #ProxyPassMatch "/ws/(._)" ws://192.168.0.172:8080/ws/$1 nocanon  
#for ssl  
#ProxyPassMatch “/ws/(.\*)” wss://91.121.103.88/ws/$1 nocanon  
VirtualHost

---

<div class="post-metadata">

**Author:** ![bsinou](https://yyz2.discourse-cdn.com/flex032/user_avatar/forum.pydio.com/bsinou/32/476_2.png) [@bsinou](https://forum.pydio.com/u/bsinou)\
**Post date:** [June 25, 2021, 9:01am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/11 "2021-06-25T09:01:09Z")

</div>

Hello @matthewoliver

Could you please edit your post so that it is correctly displayed ? Right now it’s (too) cumbersome to read.

Thx.

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex032/uploads/pydio/original/2X/6/61f19fa52ec15fd4250db51aea351adba0e831fd.png) [@system](https://forum.pydio.com/u/system)\
**Post date:** [August 24, 2021, 9:01am UTC](https://forum.pydio.com/t/running-cells-in-addition-to-apache-on-debian-buster/3872/12 "2021-08-24T09:01:56Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
