如何让所有子页面都进入主页面?

时间:2013-11-02 07:39:19

标签: php regex apache .htaccess mod-rewrite

如何让所有子页面都进入主页?

sampel.com/2/sampel.html

所以

sampel.com/sampel.html

所以所有子页面都移动到主页面

穿.htaccess

2 个答案:

答案 0 :(得分:1)

  

How do you let all the sub pages to the main page?

您可以通过mod_rewrite规则执行此操作:

RewriteEngine on

RewriteRule ^[^/]+/([^.]+\.html)$ /$1 [L,NC,R=302]

RewriteRule ^([^.]+)\.html$ /pages/head.php?cari=$1 [L,NC]

这会将每个/dir/file.html重定向到/file.html

答案 1 :(得分:0)

请阅读documentationsearch for examples

我不确定您是否要进行外部重定向或内部重写。对于我在下面显示的规则,我假设您希望浏览器中的URL更改,因此需要外部重定向。首先,您需要确保在apache安装中启用了mod_rewrite。然后在.htaccess文件中启用rewriteengine并在其下面编写规则。你需要使用“RewriteRule”。第一个参数是与请求匹配的正则表达式。第二个参数是它被重写的内容。第三个参数是标志列表。您可以在上面链接的文档中找到有关它们的信息。你想确保第一个参数与它被重写的部分不匹配,或者你将创建一个无限循环,最终导致某个地方出现错误。以下规则应该按照您的意愿执行。

RewriteEngine on
RewriteRule ^2/(.*)$ $1 [R,L]