天蓝色网页应用上的Wordpress网站重定向到404错误页面

时间:2017-06-14 17:03:33

标签: php wordpress azure redirect web-config

我在Azure网络应用中托管了一个基于wordpress的互联网网站。

如果我在" /"后面输入各种字符串;我的URL(例如:" www.blabla.net/asdfasdf")我被重定向到我配置的404错误页面。 BUT:如果网址字符串包含一个或多个" +"字符(例如:" www.blabla.net/as+asdf"或只是" www.blabla.net / +")重定向到配置的404错误页面并没有#39 ; t work,我被重定向到包含以下文本的页面:

  

您要查找的资源已被删除,名称已更改或暂时不可用。

我的" web.config" IIS 8上的文件如下所示:

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
      <system.webServer>
        <rewrite>
          <rules>
                <rule name="WordPress: http://blabla.net" patternSyntax="Wildcard">
                <match url="*"/>
                   <conditions>
                     <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
                     <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
                   </conditions>
                <action type="Redirect" url="index.php"/>
         </rule></rules>
        </rewrite>
     </system.webServer>
    </configuration>

如果您能给我任何提示如何配置web.config文件以及&#34; +&#34;那么我将非常感激。字符被视为其他各种字符,并执行重定向到配置的404错误页面?

提前谢谢!

1 个答案:

答案 0 :(得分:0)

由于安全原因,自IIS 7以来,过滤模块将拒绝包含双转义序列的URL请求。这就是当您在URL中添加“+”字符时,您获得了404.11响应代码的原因。您可以参考this post了解详细信息。

如果您坚持使用带有“+”字符的网址,则可以使用下面列出的<!DOCTYPE html> <html> <head> <title></title> </head> <body> <h1>Welcome Page </h1> <form action="<?php echo base_url();?>latest_ctrl/insert" method="post"> <table > <tr> <td colspan=2 align="center"><h3>User Details</h3></td> </tr> <tr> <td> <?php echo form_label('Name'); ?> </td> <td> <?php echo form_input(array('id' => 'name', 'name' => 'name','value'=>'')); ?> </td> </tr> <tr> <td> <?php echo form_label('Pass'); ?> </td> <td> <?php echo form_password(array('id' => 'pass', 'name' => 'pass')); ?> </td> </tr> <tr> <td><?php echo form_label('Email'); ?> </td> <td><?php echo form_input(array('id' => 'email', 'name' => 'email')); ?></td> </tr> <tr> <td><?php echo form_label('Mobile'); ?> </td> <td><?php echo form_input(array('id' => 'mobile', 'name' => 'mobile')); ?> </td> </tr> <tr> <td> <?php echo form_label('Address'); ?> </td> <td> <?php echo form_input(array('id' => 'address', 'name' => 'address')); ?> </td> </tr> <tr> <td colspan="2" align="center"><?php echo form_submit(array('id' => 'submit', 'value' => 'Submit')); ?> </td> </tr> </form> </table> </body> </html> 文件。然后,web.configwww.blabla.net/as+asdf将重定向到配置的404错误页面,但请记住,这可能会以某种方式降低您网站的安全级别。

www.blabla.net/+