The PHP announcement suggests turning off the session upload progress switch first, and how to implement temporary relief measures without affecting the business.
The official announcement suggests turning off a certain configuration switch as a temporary relief, how to arrange it so as not to harm the business when it lands? The sequence should be: first establish a rollback point, then run the business chain that depends on the switch in the test station, and finally push it in batches to the production environment. The temporary relief modifies the runtime configuration, which eliminates the triggering condition, not the defect itself, so its side effects are greater than the patch, not smaller.
First, see which chain is suggested to be turned off.
On October 21, 2026, the PHP official released four security versions 8.5.12, 8.4.27, 8.3.36, and 8.2.35, addressing two issues that could lead to remote code execution; in the supplementary explanation on October 23, a temporary mitigation method was provided: setting the session upload progress switch to off. This switch is used to expose progress information to the server during the file upload process, commonly used by upload progress bars, large file forms, and other front-end interactive dependencies.
Determine whether the business will be damaged, just look at whether the site is actually using this link. You can first search for progress query related interface calls in the background and frontend code, and then see if the upload component has declared a progress callback. If not used, turn it off; if used, evaluate what the frontend will see after turning it off, which is usually that the progress will no longer be updated rather than the upload fails, but this still needs to be confirmed by actual testing.
The difference between temporary relief and official patches
| Comparison item | Temporary relief | Official patch |
|---|---|---|
| Processing object | Trigger condition | Defect itself |
| Change content | Runtime configuration switch | Code version replacement |
| Side effects surface | The functionality that depends on this feature may fail | Compatibility issues are the main concern |
| Prerequisite for taking effect | Most of them need to take effect before request parsing and restart the work process | Just replace the file |
| Duration of existence | Until the next release of the repair version | Long-term |
The key point is the prerequisite for taking effect. The announcement clearly requires that it take effect before request parsing, and modifications made in the user-level configuration file or script under the site directory do not count. After the modification, you must restart all work processes. Missing one means that part of the requests are still running under the old configuration. This state of 'mitigation has been issued but not yet taken effect' is most easily misjudged as already handled.
How to arrange the implementation sequence
Step 1: Create a rollback point. Before changing the configuration, make a complete backup and ensure that the backup covers static files. Only backing up the database will not allow you to trace abnormal changes in the upload directory. Backing up and restoring itself is not a secure action, but it determines whether you can go back within a few minutes when something goes wrong.
Step 2: Verify on the test site. Run each of the following links: upload, form submission, comments, and large file attachments. Confirm the real performance after the switch is turned off. The output of this step is not just 'it works', but a conclusion that can be included in the change ticket: which features will lose progress display, and which will be unaffected.
Step 3: Gradual rollout. When deploying across multiple nodes, first cut one node, observe the error logs and the success rate of the upload interface, and then push to each node one by one. Each configuration change on a node should be noted with a timestamp for later alignment in case of anomalies.
Step 4: Full rollback after rollout. Confirm that the start time of all work processes is later than the configuration change time, this step can directly expose any missed nodes. After the patch version is released, roll back to the formal fixed version in the same order, and restore the temporary switch to the original configuration according to the announcement.
What to do when not running on this route
If the site is not running a scripting language, this announcement does not constitute a task. AnQiCMS is built with Go language and Iris framework, there is no session upload progress switch like PHP runtime, nor do you need to change the configuration file on each machine and restart the work process; the upgrade action is converged into replacing the executable file as a whole and restarting a single service.
But do not skip the process just because 'it is not affected by this announcement.' What you really need to pay attention to is the version of your own software and the rhythm of the announcement: list the runtime and component versions in a ledger, record the specific version number and release date you are currently using, and check the ledger before deciding whether to take action when the announcement appears. The difference between Baota Panel and Docker, two common deployment methods at this step, is just the source of version information; the former looks at the software version page, and the latter looks at the image tag; the ledger must be maintained by yourself.
Common questions
How long can you run solely on mitigation measures before releasing a formal patch?As per the time point announced, treat the mitigation as a temporary item in the change order and set a review date, do not let it remain ownerless for a long time.
Will turning off the switch cause the upload to fail?It is usually that the progress information no longer updates, the upload itself can still be completed, but it must be confirmed by actual testing at the test site, and the handling methods of different front-end components are different.
Do I need to restart the service after changing the configuration?Yes, and you need to restart all work processes, otherwise some processes will still use the old configuration. This is the most common execution deviation of mitigation measures.
Does the site use reverse proxy, and do we need to handle it separately?Measures to alleviate the situation take effect at the service configuration layer, the proxy layer does not change this point, but it is easier to miss a node after proxying multiple nodes, and it needs to be checked one by one according to the start time after restart.