如何将htaccess规则转换为IIS7/Symfony的web.config?

 用户gum5gltoo8 发布于 2023-02-05 10:21

我有一个在linux服务器上开发的symfony2项目,并且由于我无法控制的原因将其迁移到Windows服务器(不幸!).除了url重写之外,这一切都正常.我尝试使用IIS URL重写模块但是在转换大多数规则时失败了(而且我没有保存它失败的列表).

它大部分工作正常,但app.php仍然存在于所有网址的开头,它不应该存在.所以网址是domain.com/app.php/correct/path,它们应该是domain.com/correct/path

不幸的是我很少使用Windows服务器,并且不擅长web.config语法,所以如果有人可以建议从Windows服务器上的所有网址的开头删除app.php缺少什么,那将非常感谢!

原始的.htaccess文件是:

DirectoryIndex app.php


RewriteEngine On
RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
RewriteRule ^(.*) - [E=BASE:%1]

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule .? - [L]

RewriteRule .? %{ENV:BASE}/app.php [L]




    RedirectMatch 302 ^/$ /app.php/


转换后的web.config文件目前是:




    
        
            
                
                
                    
                
                
            
        
    


非常感谢!

戴夫

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有