[英]Mod_rewrite: redirect to hash urls?
我想将常见的URL重定向到哈希URL,如下所示,
http://localhost/mywebsite/estate/heritage/
至
http://localhost/mywebsite/#/estate/heritage/
我的.htaccess中有这个重写代码,
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ #/$1/$2/ [R,L,NE]
但是我得到的结果是
http://localhost/C:/wamp/www/mywebsite/#/estate/heritage/
它有多余的C:/wamp/www/
我不想要。
如何删除它或不以重写代码打印它?
您需要一个完整的新URL,如下所示:
RewriteRule ^/mywebsite/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ /mywebsite/#/$1/$2/ [R,L,NE]
您可以将此规则放在/mysaite/.htaccess
:
RewriteEngine On
# set ENV variable BASE equal to current RewriteBase value dynamically
RewriteCond %{REQUEST_URI}::$1 ^(.*?/)(.*)::\2$
RewriteRule ^(.*)$ - [E=BASE:%1]
RewriteRule ^([a-z0-9-]+)/([a-z0-9-]+)/?$ %{ENV:BASE}#/$1/$2/ [L,NC,NE,R=302]
使用RewriteBase
对解决您陈述的问题非常重要。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.