Question

Removing question mark from php install (Expressionengine)

  • Posted August 9, 2013

Hi, I am using Expressionengine as a cms. I am trying to clean up my url’s by removing the “index.php” file via htaccess.

All is working well except that I cannot remove the question mark. So…

This Works: http://192.241.163.168/index.php?/site/contact-us The Works: http://192.241.163.168/?/site/contact-us This Does Not: http://192.241.163.168/site/contact-us

Could this be a setting in php?

I have tried every variation I can think of in this htaccess file

BEGIN ExpressionEngine Rewrite

RewriteEngine On

Removes index.php from ExpressionEngine URLs

RewriteCond $1 !.(gif|jpe?g|png)$ [NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L]

END ExpressionEngine Rewrite

Thanks

Subscribe
Share

Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Sweet! Glad it’s working now :]

[SOLVED] Well, after all that, turns out (as usual) that it was a simple error. The ServerName was not right in the Apache file. Once that was corrected, all works as expected. <br> <br>Thanks Kamal Nasser for all the assistance. Appreciate all the help. Some of your suggestions probably insured that it worked once I DID find the issue, particularly the “AllowOverride All”. <br>

Hmm, weird. It could be a problem with Expressionengine. Try asking in their official forums: <br> <br>http://ellislab.com/forums

Unfortunately, still no change.

Try adding in this line at the top of your .htaccess file: <br> <br><pre>AcceptPathInfo On</pre>

both www and the site directory are set to AllowOverride All and I did as you suggested. Still requires a url like http://cmp-publishing.com/?/site/contact-us or I get a page not found error.

Change it back to All, and run the following commands: <br> <br><pre>a2enmod rewrite <br>service apache2 restart</pre> <br> <br>as root. Does that fix it?

Thanks Kamal, I did that for the “www” directory. When I try it for the site directory I get an error that changing it back to none solves. Do you think it could it be a permissions error of some sort?

Make sure you have <code>AllowOverride All</code> in your virtualhost file (in /etc/apache2/sites-enabled).