我创建了一个单页网站(www.lelaboratoiredeco.fr),我试图在.htaccess中重写一些花哨的网址。
我的页面基本上有6个由div ID定义的部分。
我想写一个翻译规则:
www.lelaboratoiredeco.fr/portfolio
到
www.lelaboratoiredeco.fr/index.php#portfolio
这也可以在没有www。
的情况下使用我四处寻找可以使用的解决方案,但无法找到合适的解决方案。虽然我计划在某些时候正确地学习正则表达式,但我当时只对该主题有非常基本的了解。
我已经使用了一段时间但它停止了工作,现在将我带到我的错误页面:
RewriteRule ^([A-Za-z0-9-]+)/?$ /#$1 [NC,NE,R=301,L]
我应该提一下,我目前有这个规则发送www.domain.com> domain.com
# REDIRECTION (tout vers le www.)
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
我很感激你对这个问题的想法。
提前致谢!!
罗曼
这是我的.htaccess文件的其余部分,如果它可以提供帮助
SetEnv REGISTER_GLOBALS 0
RewriteEngine on
AddDefaultCharset UTF-8
# Error pages
ErrorDocument 404 /erreur.php
ErrorDocument 403 /erreur.php
Options -Indexes
# REDIRECTION (tout vers www.)
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
# REDIRECTION de .xxx.fr/portfolio vers xxx.fr/index.php#portfolio
RewriteRule ^([A-Za-z0-9-]+)/?$ /#$1 [NC,NE,R=301,L]
答案 0 :(得分:0)
要保持网址中的/contact
,/portfiolio
等,请从规则中移除R=301
:
RewriteRule ^([A-Za-z0-9-]+)/?$ /#$1 [NC,NE,R=301,L]
将成为:
RewriteRule ^([A-Za-z0-9-]+)/?$ /#$1 [NC,NE,L]
应该有效