我已经使用Apache 301重定向将SEO URL实现到网站根目录中的"redirect.cfm",该网站处理所有URL构建和内容交付.
在301重定向期间,发布数据会丢失.
到目前为止还无法找到解决方案,尝试从重写中排除post方法 - 最坏的情况我们可以使用旧类型的URL来进行post方法.
有什么可以做的吗?
谢谢
我正在运行Apache 2.0,我只是想知道是否可以使用JavaScript或jQuery进行301重定向.
我有一个指定位置的<a></a>标签,href当我点击该链接时,我被要求进行301重定向.
这是针对搜索引擎优化,我试图找到一种方法来301重定向到链接中的同一页面,而无需创建新页面或创建表单/提交.
我正在尝试编写一个.htaccess规则来重定向到一个脚本,该脚本进一步重定向到其他地方.有点像URL缩短程序的工作方式.但是,我不希望.htaccess在重定向部分期间更改地址栏.(脚本重定向可以更改位置.)
我正在使用mod_rewrite,目前这样做:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteBase /
RewriteRule (.+)$ "?url=$1" [L,R=301]
Run Code Online (Sandbox Code Playgroud)
有没有我可以用来实现我想做的旗帜或其他方法?
附录:随着重定向的发生,位置栏在Firefox中没有变化,这就是我想要做的.它只是改变一次以反映终点.Safari会在每一步都改变它.有什么办法可以避免吗?
RFC似乎建议客户端永久缓存响应:http: //www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
10.3.2 301永久移动
已为所请求的资源分配了一个新的永久URI,并且此资源的任何将来的引用应该使用返回的URI之一.具有链接编辑功能的客户端应尽可能自动将对Request-URI的引用重新链接到服务器返回的一个或多个新引用.除非另有说明,否则该响应是可缓存的.
新的永久URI应该由响应中的Location字段给出.除非请求方法是HEAD,否则响应的实体应该包含一个带有指向新URI的超链接的短超文本注释.
如果收到301状态代码以响应GET或HEAD以外的请求,则用户代理不得自动重定向请求,除非用户可以确认,因为这可能会改变发出请求的条件.
Run Code Online (Sandbox Code Playgroud)Note: When automatically redirecting a POST request after receiving a 301 status code, some existing HTTP/1.0 user agents will erroneously change it into a GET request.
我很难找到任何主要浏览器的具体浏览器文档,说明他们如何处理这些.
我已经开始挖掘firefox的源代码,但很快就迷路了.
对于哪些(如果有的话)浏览器,以下情况是否属实,并且是否有适用于Firefox或IE的权威文档?:
第一次:
任何后续时间:
firefox internet-explorer webclient behavior http-status-code-301
我想将多个条目重定向到我的目标网页到一个网址.
以下URL,http://mysite.com并且http://www.mysite.com,会重定向到http://www.mysite.com/使用301重定向.如何/应该在Rails中完成?
我有多个域指向一个托管位置.我希望将其中一个域建立为我的主域,因此每当用户从辅助域访问我的站点时,我希望执行301重定向到此主域.
例如:
www.example.com
这是我的主要领域.我希望与我的网站相关联的所有其他域重定向到此处.
如果用户进来:
www.test.com或www.test.com/anypage等
然后我希望将用户重定向到该页面的示例版本.
如何使用我的应用程序的web.Config文件执行此操作?我问的原因是,通常我的网络托管服务提供商在他们的后台办公室有一个工具,允许我设置这个重定向,但是,我们的客户选择了不提供这种工具的不同托管服务提供商.
我试图使用以下代码执行此重定向,但它似乎不起作用:
<rule name="Canonical Host Name" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" negate="true" pattern="^test\.com$" />
</conditions>
<action type="Redirect" url="http://www.example.com/{R:1}}" redirectType="Permanent" />
</rule>
Run Code Online (Sandbox Code Playgroud)
我的应用程序是一个由Umbraco驱动的站点,因此在web.config文件中有几个system.webServer条目.可能只是我在错误的地方输入了这个代码,但是在这里的任何帮助都会非常感激,因为我只习惯在.htaccess文件中进行301重定向.
我有大约18个域需要重定向到一个新域.它必须在有或没有www前置的情况下工作.
我试过这个:
<IfModule mod_rewrite.c>
RewriteEngine on
Rewritecond %{HTTP_HOST} !^www\.domain\.com
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
这给了我一个重定向循环(以前只能使用www,我想?).
.htaccess redirect multiple-domains http-status-code-301 web
我们的nginx前端后面有几个后端.
是否有可能拦截这些后端发送的301/302重定向并让nginx处理它们?
我们独自在于:
error_page 302 = @target;
Run Code Online (Sandbox Code Playgroud)
但我怀疑301/302重定向可以像404等一样处理...我的意思是,error_page可能不适用于200等错误代码?
总结一下:
我们的后端偶尔发回301/302s.我们想让nginx拦截这些,并将它们重写到另一个位置块,在那里我们可以用它们做任何其他的事情.
可能?
谢谢!
redirect reverse-proxy nginx http-status-code-301 http-status-code-302
我一直在尝试进行适当的301重定向,但未能这样做.无论我尝试什么,它总是302重定向.
返回302:
http_redirect("urlgoeshere", '', false, HTTP_REDIRECT_PERM)
Run Code Online (Sandbox Code Playgroud)
返回302:
header("HTTP/1.1 301 Moved Permanently");
header("Location: urlgoeshere");
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释为什么这些回归302而不是301?服务器操作系统是linux,运行PHP/5.2.14.亲自尝试一下.
我会给你们一个URL尝试.我正在使用YSlow和Googlebot进行测试.
应该是301:http://www.fantasysp.com/player/mlb/Albert_Pujols/1486349

我已经完成了使用ASP.NET Webforms开发一个网站并完成它我正在设置301重定向以确保旧网站的链接被正确重定向.
但是,旧网站是用经典ASP编写的.从旧的.asp页面到新的.aspx页面设置重定向的最佳方法是什么?(注意:我无法控制托管网站的服务器,因此我无法在IIS中执行任何操作)