When using PHP to develop public accounts, sometimes you will encounter the problem that it cannot be verified by the WeChat public account platform. This is a very common problem during the development process. This article will introduce the possible causes and solutions to this problem to help PHP developers solve the problem of official account verification failure.
1. Problem description
When the developer fills in the server address on the WeChat public platform and clicks the "Submit" button, the WeChat platform fails to verify, prompting "token verification failed" or " The URL is incorrect and cannot pass verification."
2. Cause of the problem
(1) The URL format is incorrect
In the WeChat public platform, the entered URL must start with "http" or "https", and Need to carry the port number (if any). If the URL is incorrect, it will fail WeChat verification.
(2) Token is incorrect or not passed
Token is an important parameter used by official accounts to verify the identity of the developer, and it is also needed in the server. If the Token is entered incorrectly during the filling process, is maliciously tampered with, or is not delivered to the server normally, verification will not be possible.
(3) The server response header information is incorrect
When verifying on the WeChat public platform, the URL filled in by the developer will be accessed and the response header information will be checked to see if it is correct. In the HTTP response header information, Content-Type must be "text/plain", and Content-Length and Transfer-Encoding:chunked cannot be set. If the response header information returned by the server is incorrect, it may cause the verification to fail.
(4) Firewall settings
In some cases, the firewall may prevent the communication between the WeChat server and the developer server, resulting in failure to pass verification. At this time, you need to check the firewall settings and allow the traffic.
3. Solution
If you encounter the problem of PHP official account verification failure, you can try the following solution.
(1) Check whether the URL is correct
When filling in the server address, you need to pay attention to whether the URL format is correct. The format should be "http://www.example.com" and the port number needs to be carried. If you are using HTTPS, you will need to change the "http" at the beginning of the URL to "https".
(2) Check whether the Token is correct or not delivered
Check whether the Token is correct or whether it is not delivered to the server normally. You can determine whether the Token has been obtained normally by printing debugging information. At the same time, please note that during the generation and transmission of Token, if special characters are encountered, URL encoding needs to be performed first.
(3) Check whether the server response header information is correct
In the server, the Content-Type needs to be set to "text/plain". Also Content-Length or Transfer-Encoding:chunked should not be set. Check that these requirements are followed.
(4) Check the firewall settings
If the problem persists, try to check whether there is a problem with the firewall settings. If you use a cloud server, you need to check the relevant security group settings and allow interactive traffic with the WeChat server.
4. Summary
This article introduces the reasons and solutions for PHP official account verification failure. Failure to pass WeChat public account verification is a problem that is often encountered in the PHP development process, but as long as the cause of the problem is known, it can be solved in a targeted manner. In the process of developing a WeChat public account, you also need to pay attention to protecting the security of the Token and ensuring that the server's response header information and URL format are correct.
The above is the detailed content of A brief analysis of the reasons and solutions for PHP official account verification failure. For more information, please follow other related articles on the PHP Chinese website!