Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
迁移现有PHP站点以使用URL重写(漂亮的URL';s)_Php_Url_Mod Rewrite_Url Rewriting_Url Routing - Fatal编程技术网

迁移现有PHP站点以使用URL重写(漂亮的URL';s)

迁移现有PHP站点以使用URL重写(漂亮的URL';s),php,url,mod-rewrite,url-rewriting,url-routing,Php,Url,Mod Rewrite,Url Rewriting,Url Routing,我目前有一个我运行的社区站点,它由大约15个php页面组成。它目前不是非常动态的,只对includes/模板使用php 目前没有通过查询字符串生成内容。这些页面不遵循标准命名约定,并且有许多入站链接 我希望扩展网站(并开始使用查询字符串来构建页面),但在此之前,我想改用漂亮的url。考虑到这一点,我有几个问题 1) 是否最好将所有请求指向url重写页面?首先捕获对.php页面的任何请求并传递它们以保留现有链接,然后为15个页面中的每一个页面提供一个巨大的case语句,最后重写新页面的url,因为

我目前有一个我运行的社区站点,它由大约15个php页面组成。它目前不是非常动态的,只对includes/模板使用php

目前没有通过查询字符串生成内容。这些页面不遵循标准命名约定,并且有许多入站链接

我希望扩展网站(并开始使用查询字符串来构建页面),但在此之前,我想改用漂亮的url。考虑到这一点,我有几个问题

1) 是否最好将所有请求指向url重写页面?首先捕获对.php页面的任何请求并传递它们以保留现有链接,然后为15个页面中的每一个页面提供一个巨大的case语句,最后重写新页面的url,因为这些页面将遵循设置的格式

2) 在我更新了我的sitemap.xml之后,我如何防止在google中出现重复的页面,或者它会删除旧页面

谢谢,我会使用apache的URL重写重定向,并保持静态。这将避免您的站点中已经存在的15个文件的混乱。
我希望我没有误解你的问题,这会有所帮助

2) 在您网站的根目录中编辑robots.txt,告诉google(和其他大多数人)它应该索引什么,不应该索引什么:

  • 谷歌关于该主题的信息:
  • 维基百科:
  • 更多信息:

无论如何实施,请确保所有重定向都使用HTTP状态301,而不是默认的(在5月份的系统中)302

302=已移动 301=永久移动


使用301有助于谷歌用新URL替换旧URL,也有助于pagerank等继续使用。

您应该使用301永久重定向从旧页面重定向到新URL。这将把跟随链接的用户从旧页面重定向到新页面,谷歌将把你在旧页面上积累的PageRank传递到新页面。您还可以考虑在旧页面上使用Googles new canonical标记,以确保它们将权限转移到新页面

在.htaccess中,您需要一堆


重定向301/old/old.htm

将它们添加到robots.txt中会实际删除现有条目吗?根据谷歌的说法,是的。Source:+1用于pagerank传递。它可以位于.htaccess或apache conf文件中。