- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
对于我当前的项目,我必须对某些链接进行 301 重定向,但是当您使用一些额外的获取参数输入它们时,这些参数需要在新 url 上加上后缀。
例子:
旧的:/language/nl/article-1/?test=123
新:/language/nl/fa1-artcile-1/?test=123
所以我使用以下代码:(在我的开发环境中运行良好)
RewriteEngine On
Options +FollowSymLinks
RewriteBase /language/nl
RewriteRule /artcile-1/* /language/nl/fa1-artcile-1/$1 [R=301,L]
但是一旦在我的生产环境中它就不起作用了,它仍然会重定向到新的 url,但是 get 参数不会附加到新的 url 上。
编辑:它确实重定向但不附加参数。
编辑 2:完全填充
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
重写规则出现在 wordpress 部分之前,我有大约 30 个。
有什么建议吗?
最佳答案
像这样:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteRule ^language/nl/article-1/?$ /language/nl/fa1-artcile-1/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
关于php - RewriteRule 不适用于生产服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34083444/
将所有页面从旧域移动到新域时,我注意到有些人添加了 ^ 而其他不在 rewriterule 中 之间有什么不同 RewriteRule ^(.*)$ http://mynewdomain.com/$1
我正在尝试重写通过 BrowserSync 代理加载的站点的 HTML。 我有一个: ./src/search.txt -- 包含正则表达式匹配 ./build/replace.txt -- 包含网页
我正在尝试使用 mod_proxy 配置 Apache 2.4 作为反向代理,但我遇到了重定向未从源服务器传递到客户端的问题。 我在虚拟主机配置中有如下配置: [...] ProxyPreserveH
我对 apache2 进行了重写,以便根请求 "www.example.com"从缓存加载内容,但所有其他带参数的请求正常通过index.php "www.example.com/?action=1"
有没有办法在 .htaccess 中放置一个小的重写规则,以将超过 20.000 个链接从旧的基于 phpBB 的论坛重定向到新的 phpBB 论坛?旧链接是这样的: https://example.
我为我的页面设计了两个不同的 RewriteRules: # Enable URL Rewriting RewriteEngine on # exclude followed stuff Rewrit
我在通过 HTTP 主机名选择目录时遇到问题。 我有这样的文件结构: . +-- .htaccess +-- domains +-- 123456.a12.whatever.net |
我正在尝试通过 RewriteRule 创建一个友好的 URL但它一直忽略 #作为变量值的一部分。 .htaccess 上的行就这么简单 RewriteRule ^key/(.+)/$ index.p
我正在尝试创建一个 URL 短对于我的网站,任何请求到 example.com/u/* 应该改写为 example.com/cpp-cgi-test.cgi?* ! 注意:目录 /u 不存在,我将它添
当人们输入时,我想重定向到 new/index.php site.com site.com/index.php site.com/index.html site.com/index.htm 那么下面的
我正在对我的网站的新版本进行编程,并且我正在尝试让 .htaccess 正确重写。我的新网站存储在这里: www.example.com/storage/new/ 我需要重写这些 URL: www.e
在 Apache 2.4 中通过 ReWriteRule (mod_rewrite) 代理时无法控制超时。 ServerName xxxx Use ssl RewriteEngine O
标题基本概括了所有内容。 :-)我有很多虚拟主机,并且我想在httpd.conf文件的顶部放置一个重写块,以重写URL,无论请求可能指向哪个虚拟主机。我该怎么办? 我找到了this,但我的问题是相同的
目前我有一个文件夹 [contact-us] mydomain.com/contact-us/ 我计划删除此文件夹并仅添加 contact-us.php mydomain.com/contact-us
基本上我有下面的 htaccess。目前它运行良好,但它会重定向每个文件。例如,当我只想将 about.php 重定向到/about 时,foo.php 到/foo。基本上,我想强制删除 about.
RewriteCond %{QUERY_STRING} ^id=(.*)$ RewriteRule ^oldpage\.php$ http://new-site.com/newpage-%1 [R=
我有一台具有一个 IP 地址的虚拟服务器,为几个不同的站点提供服务。其中之一带有 SSL 证书。 我需要在第二个域上添加 SSL 证书供我自己私有(private)使用,由于我只有一个 IP 地址,所
我的网站根目录中有一个 .htaccess,如下所示: RewriteEngine On RewriteCond %{HTTP_HOST} !^www\.mydomain\.pl [NC] Rewri
我有一个服务器,我想强制与外部世界进行 https 通信,但是,服务器上的某些服务需要由本地服务器上的进程通过 http 访问。 我尝试了以下方法: RewriteEngine On RewriteC
我在 apache 服务器上设置了一个站点,其中桌面站点位于/public_html 中,移动站点位于/public_html/mob 我正在尝试设置一个 .htaccess 重写规则,以便在用户访问
我是一名优秀的程序员,十分优秀!