我现在正为这个问题苦苦挣扎。在Google Search Console中,我遇到了许多抓取错误,并且存在相同的问题:Google找不到什至不存在的网址。
我已经查看了html代码,但是相对的URL都很好。而且我将/ -base用于所有内部链接。我认为问题是我的.htaccess文件。
在我的网站nationalsleaguevoetbal.nl上,我有两个带有不同重写的URL:
'land'不被使用,仅用于看起来不错。现在,Google Search Console找不到例如:
它将两个不应包含的网址结合在一起。
我的.htaccess重写如下:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)$ /index.php?pagina=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^nieuws/([^/]+)$ /index.php?pagina=nieuws&item=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^wedstrijd/([^/]+)/([^/]+)$ /index.php pagina=wedstrijd&id=$1&landen=$2 [QSA,L]
我认为QSA可以解决问题,但是错误又回来了。你能帮我吗?
答案 0 :(得分:1)
具有这种方式:
RewriteEngine On
# skip all files and directories from rewrites
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^nieuws/([^/]+)/?$ index.php?pagina=nieuws&item=$1 [QSA,L,NC]
RewriteRule ^wedstrijd/([^/]+)/([^/]+)/?$ index.php?pagina=wedstrijd&id=$1&landen=$2 [QSA,L,NC]
RewriteRule ^(.+?)/?$ index.php?pagina=$1 [QSA,L]