I have this htaccess:
Options +FollowSymLinks
RewriteEngine on
RewriteRule cache/ - [F]
Options -Indexes
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([a-zA-Z0-9\-\_\/]*)$ index.php?p=$1
# Blokada hotlinking czyli kradzieży obrazków
RewriteCond %{HTTP_REFERER} !^https://(.+\.)?nazwadomeny.pl/ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !yahoo\. [NC]
# Prevent viewing of htaccess file.
<Files .htaccess>
order allow,deny
deny from all
</Files>
RedirectMatch 403 ^.*/apps/(.*).php(.*)$
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl|map)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>
in php I have this (my router):
$explodeUrl = explode('/', $url);
$request->controller = ucfirst($explodeUrl[0]);
$request->action = $explodeUrl[1] ?? 'index';
$request->params = $explodeUrl[2] ?? [];
When I have this url - all is ok:
- www.domain.com\sample
- www.domain.com\contact
- www.domain.com\option\value
- www.domain.com\url\id
- www.domain.com\product
ame\id
Problem is when I have this url:
- www.domain.com\product?id=1
- www.domain.com\viewCity?build=123
then I have result: viewCity?build=123 or product?id=1.
The thing, the problem is in this line: RewriteRule ^([a-zA-Z0-9\-\_\/]*)$ index.php?p=$1
In result I need only: viewCity or product - without ?....
How repair it?