|
|
|
<VirtualHost *:80>
|
|
|
|
ServerName vroom.example.com
|
|
|
|
DocumentRoot /opt/vroom/public
|
|
|
|
RewriteEngine on
|
|
|
|
RewriteRule ^/(.*|$) https://%{HTTP_HOST}/$1 [L,R]
|
|
|
|
</VirtualHost>
|
|
|
|
<VirtualHost *:443>
|
|
|
|
ServerName vroom.example.com
|
|
|
|
SSLEngine on
|
|
|
|
DocumentRoot /opt/vroom/public
|
|
|
|
<IfModule mod_proxy_wstunnel.c>
|
|
|
|
ProxyPass /socket.io/1/websocket ws://localhost:8889/socket.io/1/websocket
|
|
|
|
ProxyPassReverse /socket.io/1/websocket ws://localhost:8888/socket.io/1/websocket
|
|
|
|
</IfModule>
|
|
|
|
ProxyPass /socket.io/ http://localhost:8888/socket.io/
|
|
|
|
ProxyPassReverse /socket.io/ http://localhost:8888/socket.io/
|
|
|
|
|
|
|
|
# Etherpad example
|
|
|
|
# If you install etherpad on the same box, listening on its default
|
|
|
|
# port (9001) and want it to be accessible on /etherpad/
|
|
|
|
# <IfModule mod_proxy_wstunnel.c>
|
|
|
|
# ProxyPass /etherpad/socket.io/1/websocket ws://localhost:9001/socket.io/1/websocket
|
|
|
|
# ProxyPassReverse /etherpad/socket.io/1/websocket ws://localhost:9001/socket.io/1/websocket
|
|
|
|
# </IfModule>
|
|
|
|
# ProxyPass /etherpad/ http://localhost:9001/
|
|
|
|
# ProxyPassReverse /etherpad/ http://localhost:9001/
|
|
|
|
|
|
|
|
|
|
|
|
AliasMatch ^/([a-z]{2}/)?(\d{10}/)?((js|css|img|fonts|snd)/.*) /opt/vroom/public/$3
|
|
|
|
RewriteEngine On
|
|
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
|
|
RewriteRule ^/([a-z]{2}/)?(\d{10}/)?(js|css|img|fonts|snd)/(.*)$ /$3/$4 [L]
|
|
|
|
ScriptAlias / /opt/vroom/public/vroom.pl/
|
|
|
|
<Location />
|
|
|
|
require all granted
|
|
|
|
<IfModule mod_deflate.c>
|
|
|
|
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript text/css
|
|
|
|
SetOutputFilter DEFLATE
|
|
|
|
BrowserMatch ^Mozilla/4 gzip-only-text/html
|
|
|
|
BrowserMatch ^Mozilla/4.0[678] no-gzip
|
|
|
|
BrowserMatch ^HMSIE !no-gzip !gzip-only-text/html
|
|
|
|
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
|
|
|
|
</IfModule>
|
|
|
|
<IfModule mod_headers.c>
|
|
|
|
Header append Vary User-Agent env=!dont-vary
|
|
|
|
Header unset ETag
|
|
|
|
</IfModule>
|
|
|
|
ExpiresActive on
|
|
|
|
ExpiresDefault "access plus 1 month"
|
|
|
|
ExpiresByType application/json "access plus 0 seconds"
|
|
|
|
ExpiresByType application/xml "access plus 0 seconds"
|
|
|
|
ExpiresByType text/xml "access plus 0 seconds"
|
|
|
|
ExpiresByType text/html "access plus 0 seconds"
|
|
|
|
</Location>
|
|
|
|
# You should customize this part to access the admin interface
|
|
|
|
# VROOM doesn't handle authentication, it's up to you to protect
|
|
|
|
# /admin on your web server
|
|
|
|
<Location /admin>
|
|
|
|
require local
|
|
|
|
</Location>
|
|
|
|
</VirtualHost>
|
|
|
|
|