.htaccess文件中有4000多行重定向301行

.htaccess文件中有4000多行重定向301行,.htaccess,cpanel,.htaccess,Cpanel,我有一个重新设计我的网站发生不久,所有的网址都在改变。以下是我到目前为止整理的http://cricketweb.net/new-design%20htaccess 我所做的一些研究表明,.htaccess文件中的这么多行会大大降低性能 我问了我的主机提供商,他们说: “您的信息是正确的,将这么多重定向添加到您的.htaccess将大大降低您网站的加载时间。不幸的是,在cPanel服务器上,将这些添加到apacheconf不是一个好主意。cPanel定期对conf文件进行编辑,可能无法很好地处理

我有一个重新设计我的网站发生不久,所有的网址都在改变。以下是我到目前为止整理的
http://cricketweb.net/new-design%20htaccess

我所做的一些研究表明,.htaccess文件中的这么多行会大大降低性能

我问了我的主机提供商,他们说:

“您的信息是正确的,将这么多重定向添加到您的.htaccess将大大降低您网站的加载时间。不幸的是,在cPanel服务器上,将这些添加到apacheconf不是一个好主意。cPanel定期对conf文件进行编辑,可能无法很好地处理您的编辑。我建议首先重新评估重写模式。例如,如果domain1.com有文件夹a、b和c,并且您希望将访问domain1.com/a的访问者发送到domain2.com/a,对于b和c也是如此,则可以使用1个重写规则完成此操作。不幸的是,如果URL不一致,例如如果您想将访问者发送到domain1.com/a到domain2.com/asdf,以及将访问者发送到domain1.com/b到domain2.com/zxcv,我们可能需要考虑使用此域的特殊规则编辑您的apache PreConforf文件,因此,请让我知道您是否能够通过合并来缩减数字规则。”

问题是我不知道如何整合这些301


有人根据
http://cricketweb.net/new-design%20htaccess

作为一个快速的解决方案,我建议在规则的左侧生成所有这些.php文件,它只会将用户重定向到右侧的URL


就我所见,没有办法使用regexp从旧URL创建新URL。

不可能优化a->B类型的关系

但当有可能找到重复模式时,
A1->B,A2->B,A9999->B
或A1->B1、A2->B2、A9999->B9999
你真的可以减少行数

示例:(相同类型的150多行)

可简化为:(1行)

其他示例(超过160行):

可简化为:(1行)

在你的档案里有很多相同类型的案子

然后,您还可以选择将文件拆分为几个部分(重写),以避免测试从URL开头删除的所有行。
例如,这可以除以20到30个测试数,只需中间重写即可。

谢谢你的建议,这太好了。这肯定会有助于减少很多测试。我的主机刚刚说过。你知道这样做有任何性能问题吗?谢谢你提供的信息。正如我前面提到的,没有办法进行edit在cPanel服务器上创建一个apache conf文件;cPanel将覆盖您的编辑。您可以将这样的规则放入自定义conf中,当apache打开时仍会加载。该文件类似于:/usr/local/apache/conf/userdata/std/2_2/username/example.com/*.conf,其中username将是原始域的用户名,example.com将是被重定向的域。你应该始终能够要求你的提供商更改.htaccess文件。特别是如果这只是一次,对于一个生命末期的站点。很难知道性能,但不能走得太远,我可以说,如果你将行数除以30,你必须至少快30倍。谢谢Croises,how使用“.conf”文件的情况?谢谢你的建议:)谢谢你的时间和建议。谢谢,这是最后一个选择,因为我想清理所有的文件。
Redirect 301 \cricketgames\commercial\brianlaracricket05\demo100.php http://www.cricketweb.net/game/brian-lara-international-cricket-2005/
Redirect 301 \cricketgames\commercial\brianlaracricket05\demo101.php http://www.cricketweb.net/game/brian-lara-international-cricket-2005/
Redirect 301 \cricketgames\commercial\brianlaracricket05\demo102.php http://www.cricketweb.net/game/brian-lara-international-cricket-2005/
RewriteRule ^cricketgames/commercial/brianlaracricket\d+/demo\d+\.php$ http://www.cricketweb.net/game/brian-lara-international-cricket-2005/ [NC,R=301]
Redirect 301 \cricketgames\commercial\internationalcricketcaptain2000\screenshot5.php http://www.cricketweb.net/game/international-cricket-captain-2000/
Redirect 301 \cricketgames\commercial\internationalcricketcaptain2006\screenshot13.php http://www.cricketweb.net/game/international-cricket-captain-2006/
Redirect 301 \cricketgames\commercial\internationalcricketcaptain2009\screenshot14.php http://www.cricketweb.net/game/international-cricket-captain-2009/
RewriteRule ^cricketgames/commercial/internationalcricketcaptain(20\d\d)/screenshot\d+\.php$ http://www.cricketweb.net/game/international-cricket-captain-$1/ [NC,R=301]