4

.htaccess is not only one place where rules can be located. First of all needs to understand what do you use on your site as webserver. For example it can be Apache, Apache+NGINX, NGIX+php-fpm. The last one don't use .htaccess . All rules is nginx config files. Apache can also keep rules in his config. .htaccess is only way to override default config (...


4

Many default SSL setup have settings to ignore .htaccess at all. So server use your .htaccess for http, but for security reason ignore default rules overwrite for https. Check your ssl config (try - /etc/httpd/conf.d/ssl.conf) what flag you have for AllowOverride? Possible you have None - in this case, the server will not even attempt to read .htaccess ...


3

It was ALL ME! I hate it when operator error is the case! In my general preferences, the name of my sites homepage was set to index.php instead of /. My bad! This was definitely an unnecessary post!


2

Updated: The issue caused by the trailing slash redirect happening after your EE index.php rewrite. You need to have this redirect happen before rewriting to index.php. (Note: almost always, you want all redirects to happen before the rewrite to index.php.) So, the simplest way to correctly remove the trailing slash, that shouldn't cause you issues, looks ...


2

I found the answer: I used this RewriteRule which add a ? after: the /index.php?/ RewriteRule ^(.*)$ /index.php?/$1 [L]


2

This is what I eventually went with; # Rewrite for new language based urls # This is to try and get all current pages going to /en/(old url) with a 301 redirect RewriteCond $1 !\.(gif|jpe?g|png|ico|js)$ [NC] RewriteCond %{REQUEST_URI} !^/(index\.php|en)(/.*)?$ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /en/$1 [...


2

Template Routes Control your URLs by remapping URI routes to a specific template, using CodeIgniter-style routing rules. $config['template_routes'] = array( 'blog/:category' => 'site/blog-category', 'blog/:year/:pagination' => 'site/blog-yearly-archive', 'blog/:any' => 'site/blog-single', );


2

It sounds like you have single entry pages that should be outputting a 404 instead of rendering the page without a valid entry. Check your tags on these pages to ensure they are using the require_entry= parameter. Used in conjunction with a {redirect="404"}, that will address landing on entry URLs that are not valid.


2

On further investigation, it appears that this redirect is coming from inside that template. See the attached image All of your header assets are being loaded just fine until something else triggers the redirect, in this example it happened after the server already responded to 15 gets from the generated page. What kind of addons does this template use? ...


2

Try this :: 1.) Go to your SSL configuration file : /etc/httpd/conf.d/ssl.con 2.) Find your Virtual Host : <VirtualHost_default_:443> 3.) Write down : Path to your directory <Directory "/var/www/html/magento"> AllowOverride All </Directory> 4.) Restart your apache : service httpd restart


1

99.9% of the time, you'll only need one copy of ExpressionEngine's index.php file, and it should live in the webroot: www/index.php Your .htaccess file with those mod_rewrite rules should be placed in the same directory as index.php: www/.htaccess Those mod_rewrite rules will work for all URLs that are children of that directory, including /careers.


1

On line 11, change: RewriteRule ^(.*)$ /index.php?/$1 [L] to RewriteRule ^(.*)$ /index.php/$1 [L] And see if that works. According to https://ellislab.com/expressionengine/user-guide/urls/remove_index.php.html, you only need to use your entry for forced query strings on hosts such as GoDaddy. However, if that's the case, you may be stuck with it.


1

I had a similar issue to this previously. Removing the "?" in the last RewriteRule solved the issue. Change in your .htaccess file: RewriteRule ^(.*)$ /index.php?/$1 [L] To: RewriteRule ^(.*)$ /index.php/$1 [L] Hope this helps you as much as it did me.


1

If you are using query strings then removing the ? will stop the site working. The ? has a special meaning in URLs, what comes after it is the query string.


1

The domain output in the rules generated by Mustash is defined by the stash_static_url config value. As you have discovered for many systems a webroot relative url should be used instead of an absolute one: https://github.com/croxton/Stash/wiki/Installing-%26-upgrading The problem with POST requests is something I have also noticed with Low Search, which ...


1

Here are a couple general things that might help: I think the one RewriteRule you've posted could and should be simplified. From this: RewriteRule gallery/Trees/(.+)?/?$ http://mydomain.com/entry/trees_and_plants [L,R=301] To: RewriteRule ^gallery/Trees/ http://mydomain.com/entry/trees_and_plants [L,R=301] Then, here's a rewrite for EE to remove index....


1

You can do this in your htaccess RewriteCond %{QUERY_STRING} URL [NC] RewriteRule .* - [R=404,L] And, EE will return a 404 error code. BUT, EE seems to always return the page that says To proceed to the URL you have requested, click the link below. It won't return your 404 template that you've set in EE (EE seems to give that ?URL parameter precedent over ...


1

You have a lot going in there. To completely remove index.php for the entire site, try this: <IfModule mod_rewrite.c> RewriteEngine On # Removes index.php RewriteCond $1 !\.(gif|jpe?g|png)$ [NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php/$1 [L] </IfModule>


Only top voted, non community-wiki answers of a minimum length are eligible