我正在尝试根据传入的php_value
在htaccess中设置特定的REQUEST_URI
。我在Apache 2.4中看到有条件块,但我们正在使用2.2
,那么有没有办法实现这个目标?
例如:
我想在传入的URI与php_value memory_limit 64M
模式匹配时设置'/batch-process'
,否则它将始终为32M
目前我可以让mod_rewrite
检查request_uri
并设置一个env变量,但我想知道如何在htaccess文件中读取这个,然后设置基于php_value
在那。
这可能吗?
我目前的htaccess规则是:
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}/berightback.html -f
RewriteRule !^(css|js|img|berightback\.html) /berightback.html [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
感谢。
更新
这就是我最终要做的事情。如果有其他方式,请评论。
在php.ini文件中,我将memory_limit提升到了256M 然后在index.php页面上,我检查了传入的REQUEST_URI以获取' / batch-process'如果不是,那么memory_limit的ini_set会回落到32M
似乎并不理想,但是在大批量处理请求中无法正常运行。
答案 0 :(得分:0)
取决于您如何映射到前端控制器。如果您是通过重写规则执行此操作,则可以使用<Location>
而不是<Directory>
块来指定要更改其设置的路径块。 <LocationMatch>
允许你使用正则表达式来做同样的事情