标签: http-status-code-301

在404上使用PHP和MySQL重定向301

我正在将一个500多页的大型静态网站转移到Joomla安装中,但我想要做的,而不是编写500多行.htaccess文件,是使用PHP内置的301头重定向来动态重定向进来的请求到新的URL.

例如,在我移动网站后,以下网址将为404而没有重定向 -

http://www.foo.com/old_page.html

我希望它重定向到

http://www.foo.com/old-page.php
Run Code Online (Sandbox Code Playgroud)

所以我想创建一个旧URL的MySQL数据库及其相应的新URL,然后,如果服务器要返回404,首先要检查数据库是否有现有旧URL,如果匹配,则发出301重定向到新URL.对,我在这里有道理吗?

我该怎么办?我可以"谈论"逻辑,但不确定从哪里开始或如何实现它,因为虽然我理解PHP,但我真的不明白它如何与Apache一起工作(或者即使它会例如......) ?

如果你知道任何已经在做这个的脚本,那就更好了.

php mysql apache redirect http-status-code-301

1
推荐指数
1
解决办法
2130
查看次数

网站大修后重定向旧网址

我们有一个网站,我们最近迁移到ASP.NET MVC.现在所有的URL都与原始网站不同.谷歌仍然拥有我们所有的旧网址,因此如果有人在搜索中找到我们,目前他们将获得404.

我有一条捕获不良网址的catchall路由,包括所有旧网址.在一个完美的世界中,我想对所有匹配此catchall路由的URL进行301重定向到主页,并且我确实有在我的开发机器上正常工作的代码.但是,我终于有人在我们的ISP(网络解决方案)告诉我他们阻止 301重定向(Web服务器返回404).

所以我认为我唯一剩下的选择是接受任何错误的URL,并将其指向主页.

这是我的问题:我知道搜索引擎(特别是谷歌)现在正在惩罚重复的内容.如果我只是将所有错误的URL指向主页,那么在搜索排名中这会对我们造成多大的伤害呢?我还有其他技术选择吗?

c# asp.net-mvc seo http-status-code-301

1
推荐指数
1
解决办法
1254
查看次数

如何在没有Rails首先剥离变量的情况下,在routes.rb中使用GET变量重定向URL?

我正在Rails中建立一个网站来取代现有的网站.在routes.rb我试图将一些旧的URL重定向到他们的新等价物(一些URL slugs正在改变,所以动态解决方案是不可能的.)

routes.rb看起来像这样:

  match "/index.php?page=contact-us" => redirect("/contact-us")
  match "/index.php?page=about-us" => redirect("/about-us")
  match "/index.php?page=committees" => redirect("/teams")
Run Code Online (Sandbox Code Playgroud)

当我访问时,/index.php?page=contact-us我没有被重定向到/contact-us.我已经确定这是因为Rails正在删除get变量而只是尝试匹配/index.php.例如,如果我/index.php?page=contact-us进入以下路线,我将被重定向到/foobar:

  match "/index.php?page=contact-us" => redirect("/contact-us")
  match "/index.php?page=about-us" => redirect("/about-us")
  match "/index.php?page=committees" => redirect("/teams")
  match "/index.php" => redirect("/foobar")
Run Code Online (Sandbox Code Playgroud)

如何将GET变量保留在字符串中并按照我喜欢的方式重定向旧URL?Rails是否有预期的机制?

rack routes ruby-on-rails http-status-code-301 ruby-on-rails-3

1
推荐指数
1
解决办法
1999
查看次数

将非 www url 重定向到 www

目前双方http://example.comhttp://www.example.com工作正常。但是,我们需要将所有http://example.comurl 重定向到http://www.example.com.

该站点是一个 ASP.net MVC4 网站。为了完成它,我在 System.webserver 下添加了以下 web.config 条目。

<httpRedirect enabled="true" destination="http://www.example.com" />
Run Code Online (Sandbox Code Playgroud)

但是,它导致重定向循环。你能帮我完成这件事吗?

asp.net iis redirect http-status-code-301 asp.net-mvc-4

1
推荐指数
1
解决办法
1391
查看次数

htaccess - 301 重定向删除部分 url

我无法开始执行此 301 重定向,我必须从所有请求中删除“BeTa”一词,然后重定向:
FROM: http://www.example.com/BeTa/other/content TO: http://www.example.com/other/content

“BeTa”也可能出现在网址的其他部分:
FROM: http://www.example.com/bla/BeTa/other/content TO: http://www.example.com/bla/other/content

是否可以?现在我只尝试了第一部分:

RewriteEngine on
RewriteRule ^/BeTa/(.*)$ /$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)

提前致谢

.htaccess redirect http-status-code-301

1
推荐指数
1
解决办法
2060
查看次数

强制路由到 HTTPS

我需要在实时服务器上设置 laravel 背包的帮助。

所以一开始我在加载资源时遇到了麻烦,因为它使用 http 作为图像和 css

http://example.com/images/http://example.com/css/

我可以使用我得到的代码解决这个问题

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> 
Run Code Online (Sandbox Code Playgroud)

资产已正确加载(它显示https://example.com/images/ ...当我检查时)

但不知何故,一些关键内容没有通过 https 加载,截图如下: 检查的元素用于文件管理器侧栏

随着错误

从源“ https://example.com ”访问位于“ http://example.com/admin/elfinder/connector ”的 XMLHttpRequest已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:重定向不允许用于预检请求。

这是错误的代码

  <!-- This file is used to store sidebar items, starting with Backpack\Base 0.9.0 -->
  <li>
    <a href="{{ backpack_url('dashboard') }}">
      <i class="fa fa-dashboard"></i>
      <span>{{ trans('backpack::base.dashboard') }}</span>
    </a>
  </li>
Run Code Online (Sandbox Code Playgroud)

还有一些内容没有更新为 https,例如一些 CSS(来自供应商/crud)、脚本、post 方法和徽标

我认为我可以将元标记复制粘贴到backpack_url,但我不知道它在哪里或它是如何工作的。

我对此很陌生,如有任何建议,我们将不胜感激

谢谢!

http-status-code-301 http-status-code-302 laravel laravel-blade laravel-backpack

1
推荐指数
1
解决办法
1070
查看次数

如何在不使用Javascript的情况下重定向网页?

我的默认页面中有一些脚本,根据浏览器的语言将用户重定向到我网站的特定语言版本.我想添加一些重定向那些没有启用Javascript的用户的东西.

目前我有以下内容:

<noscript>
  <META HTTP-EQUIV=REFRESH CONTENT="1; URL=en/index.htm">.
</noscript>
Run Code Online (Sandbox Code Playgroud)

但我已经读过这个并不太明智,因为一些搜索引擎不屑一顾.我该怎么做并保持搜索引擎的快乐?

html javascript http-status-code-301 http-status-code-302

0
推荐指数
2
解决办法
1610
查看次数

301将静态HTML重定向到动态PHP页面

升级我们的网站后,人们在博客等方面的许多旧链接现在都会转到我们的404错误页面.

一个例子是:(使用h#pb/c我是一个新用户,不能发布链接)

h#p://www.site.com/pressreleases/some_release.html
h#p://www.site.com/pressreleases/another_release.html
Run Code Online (Sandbox Code Playgroud)

这些项目现在是数据库驱动的网站的一部分,将在这里生效:

h#p://www.site.com/pressreleases/details.php?id=1
h#p://www.site.com/pressreleases/details.php?id=2
Run Code Online (Sandbox Code Playgroud)

如何设置301重定向
h#p://www.site.com/pressreleases/some_release.html

h#p://www.site.com/pressreleases/details.php?id=1,


h#p://www.site.com/pressreleases/another_release.html

h#p://www.site.com/pressreleases/details.php?id=2

谢谢

http-status-code-301

0
推荐指数
1
解决办法
1447
查看次数

如何在Perl应用程序中处理HTTP重定向?

我使用这个Perl子例程从网页获取一行,然后我将其拆分以获取我需要继续的信息.这已经工作了十几年.

sub capture_line {

   my $page_to_get = $_[0];
   my $host_to_get_text = $_[1];
   my $port = 80;
   my $buf = &HTTPGet($page_to_get, $host_to_get_text, $port);
   my $image_capture_text;
   my @lines = split(/\n/,$buf);
#      print "$lines[1]\n";
#      print "$page_to_get, $host_to_get_text\n";
#      print "$buf\n";

    foreach (@lines) {
       if (/$text_to_find/i) {
          $image_capture_text = $_;
     print "in_loop";
       last;
       }

     }
    return $image_capture_text;
}
Run Code Online (Sandbox Code Playgroud)

不可原谅的$page_to_get是,现在总是301重定向,并且$buf在打印时,给我一个301重定向页面,显然不包含所需的文本.是否有一个$in值对(例如),我可以使用它HTTPGet来跳过重定向,以便我得到我在http://$host_to_get_text$page_to_get浏览器中输入时看到的页面?或者是否有更好的方法来完成相同的事情(知道在查看的网页的源中不断变化的文件名)?

感谢您的时间.格雷格马什

perl http http-status-code-301

0
推荐指数
1
解决办法
839
查看次数

NGINX从旧域重定向到新域

我需要重定向请求像http://domain.com/?part=wordhttp://another_domain/?part=word,"字"可能是不同的

我的nginx配置:

server {
  listen       80;
  server_name  domain.com www.domain.com;
  rewrite ^/?part=(.*)$ http://another_domain/?part=$1 permanent;
}
Run Code Online (Sandbox Code Playgroud)

重定向不起作用,我做错了什么?

redirect nginx http-status-code-301

0
推荐指数
1
解决办法
2984
查看次数

0
推荐指数
1
解决办法
1914
查看次数

如何使 Netlify 中的 301 重定向工作?

  1. 我根本无法让 301 重定向在 Netlify 中工作(我看过其他答案,但它不起作用)。

  2. 我制作了 _redirects 文件并将其放在我的 github ripo 的根目录中。

    https://zen-booth-7b30d6.netlify.com/* https://www.ionvarsescu.tk/:splat 301!

    我希望当有人输入这个:https://zen-booth-7b30d6.netlify.com/他会被重定向到这里:https://www.ionvarsescu.tk ,但这不会发生。

  3. 我正在尝试将https://affectate-yalow-1e0141.netlify.com/重定向到https://www.ionvarsescu.tk/portofolio/
    这也不起作用

谢谢您的帮助

redirect http-status-code-301 netlify

-1
推荐指数
1
解决办法
959
查看次数