skip to Main Content

I have a REST API project built in condeigniter 3 in www.mysiteone.com/project which works fine. Now, another domain of mine is www.mysitetwo.com/project is configured such way that it hits the first url. For example, if I browse www.mysitetwo.com/project/license.txt it shows the file that is in www.mysiteone.com/project/license.txt as it should. But the issue is when I am trying to access any of the APIs. Like www.mysiteone.com/project/apiendpoint returns data but when I am hitting www.mysitetwo.com/project/apiendpoint it is showing the following error:

<html>

<head>
    <title>404 Not Found</title>
</head>

<body>
    <h1>Not Found</h1>
    <p>The requested URL /srv/www/mysiteone.com/www/project/index.php/apiendpoint was not found on this server.
    </p>
</body>

</html>

here is the .htaccess file inside the project folder

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

And in config.php

$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';

Where should I make change to make this work?

2

Answers


  1. Chosen as BEST ANSWER

    Need to replace

    RewriteRule ^(.*)$ index.php/$1 [L]
    

    With

    RewriteRule ^(.*)$ /project/index.php/$1 [L]
    

  2. Below will be more effective so as to handle possible future scenarios.

    RewriteEngine on
    RewriteCond "%{HTTP_HOST}"    "!^www.mysitetwo.com" [NC]
    RewriteCond "%{HTTP_HOST}"    "!^$"
    RewriteRule "^/?(.*)"         "http://www.mysiteone.com/$1" [L,R,NE]
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search