2017-09-10 147 views
1

我最近抓住一个主机,首先在我的htdocs根目录中有一个index2.html,这是默认索引,我没有删除,直到我安装了wordpress在那根。然后WordPress将会由httaccess文件与以下代码这是正常的:?在我的wordpress网站索引url中有“/?i = 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 

现在我认识到,有时有/ I = 1或/我在一般的url = 2,例如,wordpresssite.com /?我= 2 这是一个问题,因为我正在使用一些广告单元系统,并且将我的网站网址提供给系统,但看起来广告系统有时会重新定向到“wordpresswebsite.com/?i=2 “网址,它不匹配我之前输入的网址(wordpresswebsite.com),所以它不会工作。

现在我删除了index2.html,但问题仍然存在。 这个?i = 1或2是关于PHP GET参数的,但是这个参数将如何显示。

+0

,我也面临着同样的问题,请及时通知,如果你找到任何解决办法.... –

+1

@jatinvermaI发现,这是由于主机提供商配置,以防止机器人的风险......最好的解决方案是将您的主机或服务器计划更改为专用VPS或服务器,以便通过您自己的方式获取服务器的所有配置 –

回答

1

我发现this Reddit上有类似的问题,结论是:

最有可能存在于虚拟主机级别的一些规则。

----是的,它是从主机,他们说他们不能禁用它,因为它保护我免受机器人。

0

如果您使用的是Apache,则必须先启用mod_rewrite

sudo a2enmod mod_rewrite 

然后,重新启动或重新加载你的服务器,新的配置要发生:

sudo service apache2 restart 

(试着找一些这方面的花哨的控制面板选项,如果不是有shell访问)

1

对于那些有兴趣删除主要由免费主机提供商安装的/?i = 1的人,这里有一个提示。

编辑&上传.htaccess文件在网站根

RewriteCond %{QUERY_STRING} ^(.*)\?i=1$ [NC] 
RewriteRule ^(.*)$ /$1?%1 [R=301, L] 
相关问题