Hello Graham, Thank you for your reply. You have suggested that I could use Alias directives to selectively overlay static assets required for other sites. I tried to use the Alias directive, but then this will force the two wsgi apps to use the same static file folder. Would you please elaborate to me what you mean by 'selectively overlay static assets'? I am having a hard time understanding how this is achievable by the Alias directive.
On Tuesday, February 11, 2014 3:55:14 PM UTC-6, Graham Dumpleton wrote: > > You can't have more than one DocumentRoot directive inside of a > VirtualHost. If you do only the last one is used. The results are not > merged. > > You would have to choose only one to use and then use Alias directives to > selectively overlay static assets required for other sites. The alternative > is to use a cascading set of mod_rewrite rules to allow static assets from > multiple directories to be merged. > > For further ideas see: > > > http://code.google.com/p/modwsgi/wiki/ConfigurationGuidelines#Hosting_Of_Static_Files > > http://stackoverflow.com/questions/4679258/merging-two-folder-with-mod-rewrite-in-htaccess > > http://serverfault.com/questions/69938/how-can-i-make-apache-look-in-2-separate-directories-with-one-common-url > > You will of course need to adapt any rewrite rules to your specific needs. > > Graham > > On 12/02/2014, at 8:12 AM, J_Irwin13 <[email protected] <javascript:>> > wrote: > > Hi all, > > I am currently working on a cherrypy project on a remote server with > Apache with mod_wsgi installed. > I have already been working on a wsgi application on this server and am > trying to add another one. > In order to add a new wsgi application, I have made a small change to the > server Apache config file: > > <VirtualHost *:80> > ServerAdmin webmaster@localhost > ServerAlias mtron.dyndns.org > DocumentRoot /var/www > <Directory /> > Options FollowSymLinks > AllowOverride None > </Directory> > <Directory /var/www/> > Options Indexes FollowSymLinks MultiViews > AllowOverride All > Order allow,deny > allow from all > </Directory> > > DocumentRoot /var/www/irwin/vorac-site/ > <Directory /var/www/irwin/vorac-site/> > Options Indexes FollowSymLinks MultiViews > AllowOverride All > Order allow,deny > Allow from all > </Directory> > WSGIScriptAlias /irwin/ /var/www/irwin/vorac-site/ > > DocumentRoot /var/www/stephanopoulos/vorac-site/ > <Directory /var/www/stephanopoulos/vorac-site/> > Options Indexes FollowSymLinks MultiViews > AllowOverride All > Order allow,deny > Allow from all > </Directory> > WSGIScriptAlias /stephanopoulos/ > /var/www/stephanopoulos/vorac-site/ > > ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ > <Directory "/usr/lib/cgi-bin"> > AllowOverride None > Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch > Order allow,deny > Allow from all > </Directory> > > ErrorLog ${APACHE_LOG_DIR}/error.log > > # Possible values include: debug, info, notice, warn, error, crit, > # alert, emerg. > LogLevel warn > > CustomLog ${APACHE_LOG_DIR}/access.log combined > > Alias /doc/ "/usr/share/doc/" > <Directory "/usr/share/doc/"> > Options Indexes MultiViews FollowSymLinks > AllowOverride None > Order deny,allow > Deny from all > Allow from 127.0.0.0/255.0.0.0 ::1/128 > </Directory> > </VirtualHost> > > The wsgi app i have been working on is colored in *green* and located on > /var/www/irwin/vorac-site/ on the server. > The new wsgi app that I added is colored in *blue* and located on > /var/www/stephanopoulos/vorac-site/ on the server. > > As you can see, the applications are located in different subfolders of > /var/www. In both folders, there is a folder called 'public' > that contains a folder called 'js' for javascript files. > > When I tried opening the new app in my browser, I did not notice anything > at first (The new app is a fork of the other app) > The problem is that when I add new javascript files or changes to my old > app (/var/www/irwin/vorac-site/), any changes I make > seem to be ignored. After doing a few experiments, I realized that the old > app was looking for javascripts in the directory of the new > app. The following apache log message seems to support this: > > [Tue Feb 11 00:46:23 2014] [error] [client 62.251.63.200] File does not > exist: /var/www/*stephanopolous/vorac-site*/public/js/pos_lib.js, > *referer*: http://mtron.dyndns.org/ <http://oprime.dyndns.org/>*irwin* > /index > > Where pos_lib.js is a new javascript file I had added to > /var/www/irwin/vorac-site/public/js. > > Furthermore, I have temporarily added another line after the new additions: > > Alias /public /var/www/irwin/vorac-site/public > > Now the js files are properly updated for the irwin site, but the same > updates are obviously applied to the stephanopolous site, which is not what > I need. > I need the server to be configured such that the apps will only look for > static files such as javascript files in their respective 'public' folders, > not sharing any resources. > > I have tried to look for similar situations on this newsgroup and on > stackoverflow, but have had no luck doing so. My guess as to what is wrong > is that since > WSGIScriptAlias /stephanopoulos/ /var/www/stephanopoulos/vorac-site/ was > added last, it made it so that all wsgi apps will look for static > files in this folder. Can anyone help me solve this problem? > > > > > -- > You received this message because you are subscribed to the Google Groups > "modwsgi" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected] <javascript:>. > To post to this group, send email to [email protected] <javascript:> > . > Visit this group at http://groups.google.com/group/modwsgi. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- You received this message because you are subscribed to the Google Groups "modwsgi" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/modwsgi. For more options, visit https://groups.google.com/groups/opt_out.
