twister

Peer-to-peer microblogging

User Tools

Site Tools


using:howto:twister_on_your_self-host_server

====== Differences ====== This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
using:howto:twister_on_your_self-host_server [2014/02/11 21:28]
natir Add htaccess conf module
using:howto:twister_on_your_self-host_server [2014/03/20 01:31]
samir
Line 99: Line 99:
  
 ``` ```
 +
 +Now you can go to twister.exemple.com/​index.html or twister.exemple.com/​home.html,​ twister.exemple.com isn't good way you or other can't do any think.
  
 ## Apache proxy ## Apache proxy
 +I supose here we want all request to twister to be secure by https, so I redirect http request to https
 +
 +```
 +# The redirection from http to https
 +<​VirtualHost *:80>
 +        DocumentRoot /var/www/
 +        ServerName twister.example.com
 +        <​IfModule mod_rewrite.c>​
 +                RewriteEngine on
 +                RewriteRule ^(.*)$ https://​%{HTTP_HOST}$1
 +        </​IfModule>​
 +
 +        CustomLog /​var/​log/​apache2/​twister-access.log combined
 +        ErrorLog /​var/​log/​apache2/​twister-error.log
 +</​VirtualHost>​
 +
 +# The real part of the configuration
 +<​VirtualHost *:443>
 +        ServerAdmin webmaster@localhost
 +        # Edit with your dns
 +        ServerName twister.example.com
 +        ​
 +        # Set DocumentRoot to twister html directory to let apache
 +        # serve static contents
 +        DocumentRoot /​path/​to/​twister-html/​
 +        ​
 +        # Usage of a custom log path
 +        CustomLog /​var/​log/​apache2/​twister-access.log combined
 +        ErrorLog ​ /​var/​log/​apache2/​twister-error.log
 +        ​
 +        # Enable SSL
 +        SSLEngine on
 +        SSLCertificateFile /​etc/​apache2/​ssl/​twister.example.com/​ssl.crt
 +        SSLCertificateKeyFile /​etc/​apache2/​ssl/​twister.example.com/​ssl.key
 +        SSLCertificateChainFile /​etc/​apache2/​ssl/​chain.crt
 +
 +        # we use url rewriting for proxying
 +        RewriteEngine on
 +        ​
 +        # redirect / to /index.html if the request is
 +        # a GET request. Call to the API seems to be all POST
 +        RewriteCond %{THE_REQUEST} GET
 +        RewriteRule ^/$ /index.html [L]
 +        ​
 +        # proxy POST request to / to twister ​
 +        RewriteCond %{THE_REQUEST} POST
 +        RewriteRule ^/$ http://​127.0.0.1:​28332/​ [P,QSA]
 +        ​
 +        # Authentication
 +        <​Location />
 +                AuthUserFile /​some/​secure/​path/​.htpassword
 +                AuthGroupFile /dev/null
 +                AuthName "​Accès sécurisé"​
 +                AuthType Basic
 +                <LIMIT GET POST>
 +                        Require user twister
 +                </​LIMIT>​
 +        </​Location>​
 +</​VirtualHost>​
 +```
 +
 +Now making the password file (add -c option if you are creating the file):
 +```
 +twister@example:​~$ htpasswd /​some/​secure/​path/​.htpassword twister
 +New password: mon_jolie_mot_de_passe
 +Re-type new password: mon_jolie_mot_de_passe
 +Adding password for user twister
 +
 +twister@example:​~$ cat /​some/​secure/​path/​.htpassword
 +twister:​$apr1$WpQNVebq$y4DyXYs06D2naWaDF0buM0
 +```
 +
 +For the authentication to work, we need to use the same user and password in the /​some/​secure/​path/​.htpassword file and in the ``.twister/​twister.conf``. We also need to increse the maximum number of concurrent threads serving twister. I put 100 by guess (default is 4), it works for me without increasing the load on my server.
 +
 +My ``.twister/​twister.conf`` :
 +```
 +twister@example:​~/​.twister$ cat twister.conf ​
 +rpcuser=twister
 +rpcpassword=mon_jolie_mot_de_passe
 +rpcthreads=100
 +rpcallowip=127.0.0.1
 +```
 </​markdown>​ </​markdown>​
using/howto/twister_on_your_self-host_server.txt · Last modified: 2014/05/20 13:11 by erkan_yilmaz