I moved an ee page to the live server and now the subpages of the site don't work anymore.

I disabled the index.php removal directive and added index.php in the cp Panel. But that didn't help so it can't be a htaccess issue.

I use the Multilanguage Plugin by Bieber ltd. Im not sure if this is caused by the multilanguage plugin because tha language switch works.

How the heck can I find out this problem.

Also on my mamp environement it works all fine so it could be a server issue.

The site runs temporarily on a subdomain. Could this be the issue?

The page can be viewed here

  • Is this using the standard EE Pages module? The subdomain shouldn't have an effect if you've set the URLs correctly to all use that subdomain or to be relative (I'd recommend relative). If the Multi-language plugin takes control of the URLs then this could very well have an impact. I'd still check the htaccess file to ensure there are no clashes on the specific page URLs.
    – Ian
    Jan 6 '14 at 12:00
  • Yeah. I use the standard pages module, the subdomain is set relative.
    – KSPR
    Jan 6 '14 at 12:08
  • From the link above, do you have an example of a sub-page URL? Does it present a 404 or any other specific error? Sounds pretty strange. If the MLS module adds country codes to the URL then I'd say it's a prime suspect. Are you including the language code (e.g. domain.com/en/page-name) in the URL?
    – Ian
    Jan 6 '14 at 12:24
  • My evilevil Sysadmin tells me the server runs: "apache 2.4 php 5.5 fpm mod_proxy_fcgi" and according to him the htaccess need to be written differently than on (normal?) servers. Anybody knows anything about this?
    – KSPR
    Jan 6 '14 at 13:56
  • Found the solution. thanks for your help tough.
    – KSPR
    Jan 6 '14 at 14:31

Okay. We found the solution. There needs to be a '?' at the end of index.php. Now the .htaccess looks like this, if interested:

<IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /

        # Removes index.php from ExpressionEngine URLs
        RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
        RewriteCond %{REQUEST_URI} !/wolkenlos/.* [NC]
        RewriteRule (.*?)index\.php?/*(.*) /$1$2 [R=301,NE,L]

        # Directs all EE web requests through the site index file
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ /index.php?/$1 [L]

  • Ah, quite often a gotcha, and one that can be very hard to spot. Glad you got it sussed. :)
    – Ian
    Jan 6 '14 at 16:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.