apache - rewrite url condition for subfolder -
i have htaccess file here
/en/.htaccess
and make condition (which main htacces inside public_html) work subfolder en
rewritecond %{the_request} /events/eventdetails\.php\?id=(.+)&name=(.+)\shttp [nc] rewriterule ^ /events/%1/%2? [l,r] rewritecond %{request_filename} !-d rewritecond %{request_filename} !-f rewriterule ^events/([^/]+)/([^/]+)/?$ /events/eventdetails.php?id=$1&name=$2 [l]
my htaccess starts this.
rewriteengine on rewritebase /en/ rewriterule ^hot-events/?$ hot-events.php [nc,l]
the last line translates link correctly www.example.com/hot-events
but want make first condition work. mean when uses link https://example.com/en/events/123/abc
should run query file
https://example.com/en/events/eventdetails.php?id=123&name=abc
directory structure
root/ ├── .htaccess ├── index.php ├── events/ │ └── eventdetails.php └── en/ ├── .htaccess ├── index.php └── events/ └── eventdetails.php
it's because rewrite destination incorrect. rewriting /events/eventdetails.php
instead of /en/events/eventdetails.php
, try :
rewriteengine on rewritebase /en/ rewriterule ^hot-events/?$ hot-events.php [nc,l] rewritecond %{the_request} /en/events/eventdetails\.php\?id=([^&]+)&name=(.+)\shttp [nc] rewriterule ^ /en/events/%1/%2? [l,r] rewritecond %{request_filename} !-d rewritecond %{request_filename} !-f rewriterule ^events/([^/]+)/([^/]+)/?$ /en/events/eventdetails.php?id=$1&name=$2 [l]
Comments
Post a Comment