[英]converting rewrite rules apache to nginx
我有一个php symfony项目,我在其中删除apache作为服务器,并出于性能原因使用nginx。 在我的virtualhost.conf中没有,我有以下设置
<Directory "/usr/share/myvirtualhost/web">
Require all granted
Options -Indexes +FollowSymLinks
AllowOverride None
Allow from All
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:X-DEVELOP-DOC-TEST} ^running$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app_doctest.php [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ app.php [QSA,L]
</IfModule>
</Directory>
现在我不知道如何将其转换为适当的nginx重写规则,尤其是
RewriteCond %{HTTP:X-DEVELOP-DOC-TEST} ^running$
我正在检查是否设置了标头,以将请求转发到app_doctest.php
我如何才能从这里走得更远?
因此,这里有一些正确的搜索链接。
首先是: 有关如何以正确的方式从apache转换内容的完整文档 。
例如,这意味着您将不使用重写,而使用try_files
。
然后,对于特定的标头测试,您可以使用http_
表单,您的X-DEVELOP-DOC-TEST
标头应位于http_x_develop_doc_test
变量中。 避免if
结构,而不喜欢map
等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.