Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从.htaccess中的url中删除点_Php_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php 从.htaccess中的url中删除点

Php 从.htaccess中的url中删除点,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,任何人都可以帮助我,告诉我如何在.htaccess中删除url中的点(没有“.html”的最后一个点) 原因是我有3000多个以“L.L.C”结尾的列表,升级phpmydirectory后,我删除了列表友好URL中的所有点 现在谷歌有3000个404错误,我的列表排名下降 例如,在我的系统中: www.mydomain.com/company-name-llc.html 在谷歌: www.mydomain.com/company-name-l.l.c..html 我只需要在不带点的情况下重定

任何人都可以帮助我,告诉我如何在.htaccess中删除url中的点(没有“.html”的最后一个点)

原因是我有3000多个以“L.L.C”结尾的列表,升级phpmydirectory后,我删除了列表友好URL中的所有点

现在谷歌有3000个404错误,我的列表排名下降

例如,在我的系统中:

www.mydomain.com/company-name-llc.html
在谷歌:

www.mydomain.com/company-name-l.l.c..html
我只需要在不带点的情况下重定向url,或者从url中删除点,并且不丢失
.html

我试过这个:

RewriteRule ^([^.]*)\.([^.]*)\.?([^.]*)?\.?([^.]*)?\.?([^.]*)?(\.html|php$) $1$2$3$4 [NC]
但它在我网站的所有页面上都出现了404错误


如果有人能在这里提供帮助,那么每个人都可以在同一个问题上受益。

试试这个,把这一行放在您位于根目录下的
htaccess

RewriteEngine on
RewriteRule (.*)\.\.html$ /$1.html [R=301,L]

此规则可能不起作用的原因:

RewriteRule ^([^.]*)\.([^.]*)\.?([^.]*)?\.?([^.]*)?\.?([^.]*)?(\.html|php$) $1$2$3$4 [NC]
您有6个捕获组,但只有4个反向引用

更简单的规则是:

RewriteRule ^([^/]*)\.([^/]*)\.html$ /$1$2.html [L,R=301]

这将循环,直到没有更多的零散点。

将您的htaccess文件添加到您的问题中,像个符咒一样工作,非常感谢,您救了我的命,真的是您;)