Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.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
Mod将所有文件重写为公用文件夹,如果文件存在,则删除.php、.html_Php_Html_Azure_Web Config - Fatal编程技术网

Mod将所有文件重写为公用文件夹,如果文件存在,则删除.php、.html

Mod将所有文件重写为公用文件夹,如果文件存在,则删除.php、.html,php,html,azure,web-config,Php,Html,Azure,Web Config,1) 我正在尝试部署到Azure web应用程序。我正在尝试将所有流量从wwwdata写入wwwdata/app/public/以便保护敏感文件的安全 2) 我还希望通过删除.php或.html(如果文件存在)来获得漂亮的URL 我可以单独实现上述两个功能,但同时实现这两个功能会遇到问题。我试着将整个规则集定义为一个文件,也试着将它们分成两个,这样 /web.config <?xml version="1.0" encoding="UTF-8"?> <configuratio

1) 我正在尝试部署到Azure web应用程序。我正在尝试将所有流量从wwwdata写入wwwdata/app/public/以便保护敏感文件的安全

2) 我还希望通过删除.php或.html(如果文件存在)来获得漂亮的URL

我可以单独实现上述两个功能,但同时实现这两个功能会遇到问题。我试着将整个规则集定义为一个文件,也试着将它们分成两个,这样

/web.config

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <clear />
                <rule name="TransferToPublic" patternSyntax="Wildcard" stopProcessing="true">
                    <match url="*" />
                    <action type="Rewrite" url="app/public/{R:0}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
/web.config

/app/public/web.config
但总是接受

您正在查找的资源已被删除、名称已更改或暂时不可用


非常感谢您的帮助。

根据我的理解,在第一条规则中,您指定了stopProcessing=“true”,因此第二条规则不被处理。我想知道您是否尝试将其设置为false或删除stopProcessing属性以查看它是否正常工作?我在Azure网站上进行了一个快速测试:&它似乎按照预期工作。如果您有任何进一步的担忧或我对您的问题有任何误解,请随时告诉我

/app/public/web.config

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Rewrite php" stopProcessing="true">
                    <match url="^(.*)$" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}.php" matchType="IsFile" ignoreCase="false" />
                    </conditions>
                    <action type="Rewrite" url="{R:1}.php" />
                </rule>
                <rule name="Rewrite html" stopProcessing="true">
                    <match url="^(.*)$" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}.html" matchType="IsFile" ignoreCase="false" />
                    </conditions>
                    <action type="Rewrite" url="{R:1}.html" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>