我一直在成功地将301重定向添加到我们的网站.htaccess文件中,以便我可以将url从旧网站指向我们新网站上的正确网址,但是我无法获取任何重定向在旧网址中包含“.pgm”的地方工作。.htaccess RewriteRule plus httpd.conf ScriptAliasMatch
的“.PGM的”是我们的IBM iSeries服务器上的RPG程序,并在新站点的URL的是在httpd.conf文件如下重定向:
ScriptAliasMatch (.*)\.pgm$ /QSYS.LIB/B2CRLIVE.LIB/$1.pgm
所有URL重定向的两个虚荣心链接和旧网站的网址是在.htaccess中完成的,并且这些工作正常,除非旧网址包含“.pgm”,在这种情况下,无论我尝试做什么,最终都会生成一个404页面。
旧网站网址的一个例子是:
http://mydomain/b2c/b2chome.pgm
我使用的重定向是:
RewriteRule b2chome /category/0/Product\ Range [R=301,L]
这工作正常,如果URL是:
http://mydomain/b2c/b2chome
但一旦你添加“.pgm”到任何网址,它只会导致404页面。
ScriptAliasMatch适用于将“.pgm”指向正确的程序库,但旧站点上使用的程序不存在于指向的库中。我认为这不是问题,因为我认为如果是这样的话,我会得到某种脚本错误。
有什么想法吗?
我不知道这是我和我的特定英语,但我不明白。你重定向(尝试)'http:// mydomain/b2c/b2chome.pgm' - >'http:// mydomain/category/0/Product Range'后? – Croises 2014-12-08 10:27:06
这个重定向的结果是原始URL仍然存在,404页面显示。如果url不包含.pgm,则重定向将起作用,但由于某些原因,重写对包含“.pgm”的url没有任何影响。希望能让它更清楚一些。 – 2014-12-08 11:03:04
在旧网站上:使用'重写规则b2chome/category/0/Product \ Range [R = 301,L]'。当你使用'http:// mydomain/b2c/b2chome.pgm'这是一个外部重定向到'http:// mydomain/category/0/Product Range' ... – Croises 2014-12-08 12:03:16