example of a subdomain - lorem.example.com
the only one sinle page inside - index.php
and one $_GET param - named lang
lorem.example.com/en - should be interpreted as - lorem.example.com?lang=en
lorem.example.com/de - should be interpreted as - lorem.example.com?lang=de
here is my try, without success
RewriteEngine ON
RewriteRule ^(en)/?$ $1.php [QSA,NC,L]
RewriteRule ^(de)/?$ $1.php [QSA,NC,L]
pls help
CodePudding user response:
You may use this rule:
DirectoryIndex index.php
RewriteEngine On
RewriteRule ^(en|de)/?$ index.php?lang=$1 [QSA,NC,L]
Here:
DirectoryIndexis useful (if not defined in Apache config) to serveindex.phpwhen request is justhttp://lorem.example.com(en|de)matches and capturesenordein$1, that is used as value inlangparameter.
CodePudding user response:
With your shown samples please try following .htaccess rules file. Please make sure to clear your browser cache before testing your URLs.
Make sure to keep your .htaccess and index.php files in same directory.
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/?$ index.php?lang=$1 [QSA,L]
