Content is accessible via example.com/index.php?p=page-name but not via example.com/index.php/page-name or example.com/page-name.

The .htaccess and 'omitScriptNameInUrls' => true are both in place but still no luck.

Any ideas?


Those are the 2 thing you need to ensure are correct.

If .htaccess files are being ignored, you need to check to see that AllowOverride is set correctly. See http://httpd.apache.org/docs/2.4/mod/core.html#allowoverride for details on setting "AllowOverride All". You need to also ensure that it is set in the correct scope - ie, in the right block in your configuration. Be sure you're NOT editing the one in the block, for example.

Third, if you want to ensure that a .htaccess file is in fact being read, put garbage in it. An invalid line, such as "INVALID LINE HERE", in your .htaccess file, will result in a 500 Server Error when you point your browser at the directory containing that file. If it doesn't, then you don't have AllowOverride configured correctly.

  • 1
    What if you don't have access to the apache server though? Jan 26 '15 at 2:52
  • usually you will only find that will cheaper shared hosting. Mar 26 '15 at 4:33

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.