.htaccess 如何使用htaccess访问URL。。。?

.htaccess 如何使用htaccess访问URL。。。?,.htaccess,.htaccess,我在谷歌上搜索并查看了stackover flow,但我没能真正理解答案 一,;我没有试图重定向,但改变了URL的外观 我想将这些更改为新的URL www.site.com/abc.php至www.site.com/ (我的索引页面当前有我的登录页面,因此我无法使用index.php) www.site.com/abc.php#123.php至www.site.com/123.php 更新: 好的,那我怎么做呢 www.site.com/abc.php至www.site.com/abc/ 因此,

我在谷歌上搜索并查看了stackover flow,但我没能真正理解答案

一,;我没有试图重定向,但改变了URL的外观

我想将这些更改为新的URL

www.site.com/abc.php至www.site.com/ (我的索引页面当前有我的登录页面,因此我无法使用index.php)

www.site.com/abc.php#123.php至www.site.com/123.php

更新:

好的,那我怎么做呢

www.site.com/abc.php至www.site.com/abc/

因此,当出现哈希链接时

www.site.com/abc/#123.pho

或者如果可能的话


www.site.com/abc/#123/

您只能对第一个url使用.htaccess

Redirect /abc.php http://www.site.com/
无法使用.htaccess重定向第二个url。 您可以使用javascript实现这一点:

<script type="text/javascript">
    if (location.hash == "123")
        location.href = location.hash+".php";
</script>

如果(location.hash==“123”)
location.href=location.hash+“.php”;

除了关于重定向的其他答案外,如果您想要更高级的转发,可以使用Apache RewriteEngine模块。 然后可以使用regexp,其中可能包含子模式

例如,在我的网站上,我在导入了从blogger到wordpress的所有内容后创建了这些模式。每当有人访问像他被重定向到的URL时

重新启动发动机 重定向匹配301([0-9]*)([0-9]*)([0-9])(.html))$$2/$3/ 重定向匹配301(([0-9])(.html))$$1

但是,根据另一个答案,你无法匹配散列标签后面的所有内容

其他示例(在注释后添加):

重定向匹配301(.*).php$$1

这将从所有链接中删除.php扩展名,新链接(withouth.php)应该存在


如果要创建“虚拟”URL,将mysample之类的内容重定向到mysample.php,可以使用mod_rewrite。请参阅以获取解释。

如果浏览器看到包含#片段的URL,则该片段部分永远不会发送到服务器,因此您无法基于它在服务器端执行任何处理。我不希望重定向,而是更改URL的外观。请注意,重写目前在我的网站上不起作用,我想我的htaccess文件不久前丢失了。嘿,我不是想重定向,只是想改变url的外观。我想我对hashmarks无能为力,如何将.php重命名为“/”,如果用户在abc中键入内容以将其重定向到abc/