我正在尝试使用modrewrite将我的网址从/foo.php更改为/ foo,并从/foo.php?lang=en更改为/ en / foo。我遇到的问题是我认为我需要使用301重定向将.php-less地址移动到.php地址,否则我的排名会在这些地址中分割2.但是如果我使用[R = 301]地址在栏中更改.php一个使我的漂亮网址努力相当无用。我该怎么办?
我四处寻找任何问题\我可以找到的教程,但我无法完全理解modrewrite。我遇到的主要问题是,如果我更改我的.htaccess文件然后重新访问已经访问过的页面,则新的.htaccess无法正常工作,但会以某种方式缓存旧结果,使纠正成为一种真正的痛苦。你知道一个解决方法吗?
谢谢,
Mokuchan
答案 0 :(得分:1)
听起来像MultiViews比重写URL更好。把它放在你的.htaccess
中。本质上,如果我输入stackoverflow.com/pages
,它将首先查找名为pages
的目录,如果找不到它,则为文件。然后,您可以stackoverflow.com/pages/view/some/page
/view/some/page
作为查询。
Options Indexes FollowSymLinks Includes MultiViews
修改要使/view/some/page/
使用$_SERVER['PATH_INFO'];
答案 1 :(得分:0)
你一定要看看Apache模块mod_rewrite和重写网址的一般想法。