Open iamgabrielma opened 3 years ago
The expectation is that the app should display this screen instead:
I tested this today using a site hosted at jurassic.ninja and I was not able to replicate the problem using the same versions of WordPress and WooCommerce on that web host. Strange! 😕 I reported similar-is issue at https://github.com/woocommerce/woocommerce-ios/issues/3392 as part of WCiOS 5.7 beta testing, however, I had been testing with a very old setup that had outdated versions of WordPress and Jetpack installed but no WooCommerce plugin. At the time, I thought the problem may have been because of my outdated versions of things—but I need to check that assumption because I see you are using WP 5.7! 🤔 Still, in a new test using WordPress 5.7 and WooCommerce 5.1.0 I see the correct Jetpack install prompt.
Jetpack prompt during login on WCiOS 6.3.0.1 TestFlight beta with iPhone 11 iOS 14.4 on frequent-hamerkop.jurassic.ninja (WP 5.7 WC 5.1.0) after attempting the Enter Your Store Address login flow.
Mobile Environment
WordPress Environment
After some tests, I can reproduce this with a site that is protected with a basic auth (example). The site URL mentioned in this issue, http://brainy-fireman.flywheelsites.com
, is protected with a password.
I performed similar steps with my site:
https://purplefish.shiki.me
, which is connected to Jetpack. I can also reproduce the same behavior using the http://brainy-fireman.flywheelsites.com
site. Here is Android:
@iamgabrielma Would you able to remove the password from your site and see if this fixes the problem?
The site URL mentioned in this issue, http://brainy-fireman.flywheelsites.com, is protected with a password.
Apologies, I didn't realize I had to setup billing in Flywheel to make the site non-password protected.
By setting this up and removing the password protection I no longer see the "not a WordPress.com site" error when attempting to connect via the iOS app. I couldn't replicate it either with a fresh jurassic.ninja site, so the auth step seems to be what throws this error.
I have seen this same problem on other sites that were not password protected, however I don't have any by hand now. Is there anything that we could check/ask if this happens again? For example would it help if we ask users for their .htaccess / nginx config files to double check that is not caused by some redirection?
I feel like the first best solution would be to able to detect basic auth and provide a helpful, specific error message—@shiki do you agree?
@designsimply I created a separate issue for it: https://github.com/woocommerce/woocommerce-ios/issues/3891. Let me know if it can be improved!
I'm not sure of the priority of that though. I don't know how often we receive instances where the problem is a password-protected site. Maybe you have an idea?
@iamgabrielma
Is there anything that we could check/ask if this happens again? For example would it help if we ask users for their .htaccess / nginx config files to double check that is not caused by some redirection?
I think checking the site is manually password-protected is good enough. The redirection can also be detected by opening the site in the browser. You'd usually be able to detect the redirect that way. Or checking the headers via curl
.
Additional investigation by @anitaa1990 in p1617069822244600/1616987145.235600-slack-C6H8C3G23.
So I was able to reproduce the issue Gabriel mentioned by creating a jurassic site with Woo but no Jetpack. The error displayed on Android is that we need Jetpack and the error displayed on iOS is that it is not a WordPress site :thinking_face: :point_down: is android
iOS:
https://user-images.githubusercontent.com/198826/113029210-6189e800-9149-11eb-9cb4-c589a867c43d.MP4
PHP: 7.2.34
WordPress: 5.6
Jetpack: 9.3 ( out of date )
Something interesting I learned today is that iOS might treat this differently than Android when dealing with HTTP vs HTTPS, from p1697601003627639/1697599124.690389-slack-C6H8C3G23
Our configuration doesn't allow us to query network requests with HTTP. I'm confused though why the request for site info passed with HTTP.But I believe you can tell the customer that they need to set up HTTPS for their site for security reasons, and our app requires that to work.
Describe the bug When attempting to connect a new store in the WooCommerce app via "store address" without having Jetpack installed/connected, the error message changes depending if the user use iOS or Android:
While in Android it says there's no Jetpack installed so the user knows what's the next step, in iOS the error message is "not a WordPress site" instead, which may confuse the user unnecessarily.
To Reproduce Steps to reproduce the behavior:
Screenshots
Expected behavior
A different error message where is explained that Jetpack is not installed or setup instead.
Isolating the problem (mark completed items with an [x]):
Mobile Environment Please include:
WordPress Environment