Sometimes you may need to remove end part of URL or remove query string from URL. Here is how to remove URL parameters using .htaccess in Apache web server. This is useful when you are consolidating multiple URLs into single URL or you don’t need the URLs with paramters to be indexed by search engines.
How to Remove URL Parameters using .htaccess
Here are the steps to remove query string from URL.
1. Open .htaccess file
Open terminal and run the following command to open .htaccess file.
$ sudo vi /var/www/html/.htaccess
Also read : How to Export to CSV in NodeJS
2. Remove Query String from URL
Let us say you have the URL http://example.com/folder/category=”abc” and you want to remove category=”abc” then add the following lines
RewriteCond %{QUERY_STRING} "category=" [NC]
RewriteRule (.*) /$1? [R=301,L]
Basically, we check if the queyr string contains “category=” and use RewriteRule to rewrite the URL without the query string. Replace “category” with your query string parameter.
If you use WordPress, then add the above lines before the following
RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L]
but after
RewriteBase /
Also read : How to Make Post Request with cURL
3. Restart Apache server
Restart Apache server to apply changes
$ sudo service apache2 restart
Open browser and enter http://example.com/folder/category=abc and it will redirect to http://example.com/folder
Also read : How to Set Apache PATH Environment Variable
Related posts:
How to Run CGI Script in Apache
How to Install mod_wsgi in Apache
How to Change Apache Prefork to Worker in Ubuntu
How to Redirect 403 to 404 in Apache
How to Redirect with Query String in Apache
Apache Configure Multiple Virtual Hosts
How to Disable TLS 1.0 in Apache
How to Prevent Cross-Site Scripting in PHP/Apache

Sreeram has more than 10 years of experience in web development, Python, Linux, SQL and database programming.