Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Exclude an alias from virtualhost proxypass

I've following virtual host configuration. The desired result is:

  1. If someone requests http://test.myserver.com/myapp, apache serves him from /var/www/myapp
  2. And if http://test.myserver.com/ is requested, apache redirects it to port 8069.

2nd is working but 1st is not. Can someone help please!

<VirtualHost *:80>         ServerName test.myserver.com          Alias /myapp /var/www/myapp         <Directory /var/www/myapp>                 Options Indexes FollowSymLinks MultiViews                 AllowOverride None                 Order allow,deny                 Allow from all         </Directory>          ProxyPass / http://localhost:8069/         ProxyPassReverse / http://localhost:8069/  </VirtualHost> 
like image 825
user2436428 Avatar asked Nov 10 '14 16:11

user2436428


1 Answers

This is how I was able to achive the desired outcome. Following is the working configuration where ProxyPassMatch ^/myapp ! did the trick and except the (server-address)/myapp, all the requests are being proxying to the other server which is open-erp running at port 8069:

<VirtualHost *:80>         ServerName test.myserver.com          Alias /myapp /var/www/myapp         <Directory /var/www/myapp>                 Options Indexes FollowSymLinks MultiViews                 AllowOverride None                 Order allow,deny                 Allow from all         </Directory>          ProxyPassMatch ^/myapp !         ProxyPass / http://localhost:8069/         ProxyPassReverse / http://localhost:8069/     CustomLog /var/log/apache2/access.log common   ErrorLog /var/log/apache2/error.log  </VirtualHost> 
like image 73
user2436428 Avatar answered Oct 03 '22 20:10

user2436428