'hash' url rewrite in .htaccess
The #
can be added in the substitution URL with the NE flag. Check:
-
This Apache link that describes specifically how to
redirect anchors
. -
This W3C Protocols link and this one.
-
This answer in SO is pretty complete.
-
Another answer in SO.
-
Another answer in SO (mine).
So, you may try this:
Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !articles\.html [NC]
RewriteCond %{REQUEST_URI} ^/articles/([^/]+)/? [NC]
RewriteRule .* /articles.html#%1 [R,NE,L]
Redirects
http://example.com/articles/parameter
To
http://example.com/articles.html#parameter
String articles
is assumed to be fixed while parameter
is assumed to be variable.
No, it's not possible. The URL fragment (everything from #
on) not even gets sent to the server.
Maybe you want to consider a JavaScript based solution, where the actual content will be loaded via AJAX dependent on the fragment. You will find some useful information about this method here: What's the shebang/hashbang (#!) in Facebook and new Twitter URLs for?