- You have a base directory of example.com - In that directory we have sub directories containing separate OJS installations. Like /somejournalname (being served from /var/www/html/somejournalname) - Loading that journal in a browser would mean: `example.com/somejournalname/index.php/somejournalname` which is not what we want. Removing index.php gets us example.com/somejournalname/somejournalname which is also not what we want. ## Possible Approaches 1. A base_url here of example.com/somejournalname might work. (but has not been thoroughly tested by folks I talked with) 1. if we want to use mod_rewrite to remove index.php/somejournalname PKP has a working set of RewriteRules for doing that that they have shared. Then "we don't need to do anything with the base_url" 1. if you do that then you can just serve example.com/somejournalname (where somejournalname is the directory not the journal path) and do article/view/1234 ## Testable URLs: * Admin URL: https://example.com/somejournalname/index/admin * Issue URL: https://example.com/somejournalname/issue/view/3106 * Article URL: https://example.com/somejournalname/article/view/62465 ## Possible Draft of Changes for apache rewrites: ```apache.conf RewriteEngine On RewriteBase /somejournalname # Rewrite Admin link RewriteRule ^/index/admin(.*) /index.php/index/admin$1 [L] # Fixes CSS error on administration page RewriteRule ^/index/(\$\$\$call\$\$\$/.*) /$1 [R=307,L] # Rewrite index requests to the journal index RewriteRule ^/(index.php)?/?$ /index.php/somejournalname/index [L] # Rewrite custom domain to make api calls correctly RewriteRule ^/(api/.*)$ /index.php/somejournalname/$1 [R=307,L] # if the incoming request references the journal shortname, # use an external redirect to strip the journal shortname RewriteRule ^/somejournalname/(.*)$ /$1 [R,L] # Normal request processing # Ignore if this request references index.php already RewriteCond %{REQUEST_URI} !/index.php/ # Ignore if request is for a known OJS directory (Apache 2.2+) RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-d # Ignore if request is for a known OJS file (Apache 2.2+) RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-f # Otherwise, rewrite all requests through index.php to this # specific journal shortname RewriteRule ^(.*)$ /index.php/somejournalname/$1 [QSA,L] ```