aaronpk / Aperture

Aperture is a Microsub server. Currently in beta.
https://aperture.p3k.io
Apache License 2.0
70 stars 5 forks source link

Using This on wordPress Results in 403 Response #71

Closed Changelingmx closed 5 years ago

Changelingmx commented 5 years ago

Hello,

I installed the plugin for my WordPress insataalation, and tried to use a few different readers. Each one returned a 403 response. I then tried deactivating the plugin, registering through Aperture, and adding the html to my page. I got the same response. The plugin shows that it is only compatible up to WP4.98, and I’m running 5.1.1, but shouldn’t adding the html fix that issue?

dshanske commented 5 years ago

Did you install Indieauth?

aaronpk commented 5 years ago

All the plugin does is ping the hosted Aperture service to create an account and add the HTML to your site.

A 403 error sounds like probably your web host is blocking the HTTP Authorization header. @GWG is there a link somewhere with steps to troubleshoot that? That is by far the most common problem and is unfortunately not something I can fix on my end at all.

dshanske commented 5 years ago

I can help troubleshoot. The first question is whether the Indieauth plugin is installed.

Changelingmx commented 5 years ago

Yes. I can log into micropub clients just fine. Trying to log in to Monocle results in the following:

There was a problem trying to load the channels from your Microsub endpoint.

Microsub endpoint: https://aperture.p3k.io/microsub/220 Your website: https://www.starshipchangeling.net/ The endpoint returned the following response.

{ "code": 403, "header": "HTTP/1.1 403 Forbidden\r\nServer: nginx/1.14.0\r\nContent-Type: application/json\r\nTransfer-Encoding: chunked\r\nConnection: keep-alive\r\nX-Powered-By: PHP/7.2.7-1+ubuntu16.04.1+deb.sury.org+1\r\nCache-Control: no-cache, private\r\nDate: Mon, 22 Apr 2019 23:04:13 GMT", "body": { "error": "forbidden", "error_description": "The token endpoint could not verify this access token", "token_endpoint": { "url": "https://www.starshipchangeling.net/wp-json/indieauth/1.0/token", "code": 400, "response": { "error": "parameter_absent", "error_description": "Bearer Token Not Supplied" } } }, "error": "", "error_description": "", "url": "https://aperture.p3k.io/microsub/220?action=channels", "debug": "HTTP/1.1 403 Forbidden\r\nServer: nginx/1.14.0\r\nContent-Type: application/json\r\nTransfer-Encoding: chunked\r\nConnection: keep-alive\r\nX-Powered-By: PHP/7.2.7-1+ubuntu16.04.1+deb.sury.org+1\r\nCache-Control: no-cache, private\r\nDate: Mon, 22 Apr 2019 23:04:13 GMT\r\n\r\n{\"error\":\"forbidden\",\"error_description\":\"The token endpoint could not verify this access token\",\"token_endpoint\":{\"url\":\"https:\/\/www.starshipchangeling.net\/wp-json\/indieauth\/1.0\/token\",\"code\":400,\"response\":{\"error\":\"parameter_absent\",\"error_description\":\"Bearer Token Not Supplied\"}}}", "headers": { "Server": "nginx/1.14.0", "Content-Type": "application/json", "Transfer-Encoding": "chunked", "Connection": "keep-alive", "X-Powered-By": "PHP/7.2.7-1+ubuntu16.04.1+deb.sury.org+1", "Cache-Control": "no-cache, private", "Date": "Mon, 22 Apr 2019 23:04:13 GMT" }, "rels": [] }

dshanske commented 5 years ago

Other clients allow a token in the body, not just the header. Can you go into the Indieauth settings page and run the diagnostic script?

Changelingmx commented 5 years ago

I can get to the box to enter the URL. I put in https://monocle.p3k.io and click the run test button, but no results come back.

dshanske commented 5 years ago

@Changelingmx Put in the URL of the page for the script itself

Changelingmx commented 5 years ago

I don't have that.

On Tue, Apr 23, 2019 at 8:13 AM David Shanske notifications@github.com wrote:

@Changelingmx https://github.com/Changelingmx Put in the URL of the page for the script itself

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/aaronpk/Aperture/issues/71#issuecomment-485776807, or mute the thread https://github.com/notifications/unsubscribe-auth/ALREWCAROTDTJQURJTCT7PTPR34NZANCNFSM4HEDM2IA .

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

Changelingmx commented 5 years ago

I don't have that.

Changelingmx commented 5 years ago

I put https://aperture.p3k.io/microsub/220 and got:

Summary Results

Notice: Undefined index: server in /srv/data/web/vhosts/www.starshipchangeling.net/htdocs/wp-content/plugins/indieauth/authdiag.php on line 106

Warning: in_array() expects parameter 2 to be array, null given in /srv/data/web/vhosts/www.starshipchangeling.net/htdocs/wp-content/plugins/indieauth/authdiag.php on line 106 $_SERVER['HTTP_AUTHORIZATION'] is unavailable on this server. You may need to change some configurations to get tools working.

Notice: Undefined index: server in /srv/data/web/vhosts/www.starshipchangeling.net/htdocs/wp-content/plugins/indieauth/authdiag.php on line 111

Warning: in_array() expects parameter 2 to be array, null given in /srv/data/web/vhosts/www.starshipchangeling.net/htdocs/wp-content/plugins/indieauth/authdiag.php on line 111 $_SERVER['REDIRECT_HTTP_AUTHORIZATION'] is unavailable on this server. Some tools may use this as fallback for $_SERVER['HTTP_AUTHORIZATION'].

Notice: Undefined index: getallheaders in /srv/data/web/vhosts/www.starshipchangeling.net/htdocs/wp-content/plugins/indieauth/authdiag.php on line 116 Tools may use getallheaders(), but this server does not support that function.

Notice: Undefined index: apache_request_headers in /srv/data/web/vhosts/www.starshipchangeling.net/htdocs/wp-content/plugins/indieauth/authdiag.php on line 125 Tools may use apache_request_headers(), but this server does not support that function.

Full Results This is mostly for your friendly neighbourhood developer.

array(3) { ["error"]=> string(9) "forbidden" ["error_description"]=> string(53) "The token endpoint could not verify this access token" ["token_endpoint"]=> array(3) { ["url"]=> string(62) "https://www.starshipchangeling.net/wp-json/indieauth/1.0/token" ["code"]=> int(400) ["response"]=> array(2) { ["error"]=> string(16) "parameter_absent" ["error_description"]=> string(25) "Bearer Token Not Supplied" } } }

dshanske commented 5 years ago

The address in the URL bar when you load that page. The address on your own site www.starshipchangeling.net/wp-content/plugins/indieauth/authdiag.php

Changelingmx commented 5 years ago

Putting that URL into the test script doesn't do anything.

Changelingmx commented 5 years ago

Here's the latest result using the URL you suggested: array(3) { ["server"]=> array(0) { } ["getallheaders"]=> array(0) { } ["apache_request_headers"]=> array(0) { } }

dshanske commented 5 years ago

When I run it, I get... $_SERVER['HTTP_AUTHORIZATION'] is unavailable on this server. You may need to change some configurations to get tools working.

dshanske commented 5 years ago

https://wordpress.org/plugins/micropub/#faq-header

Changelingmx commented 5 years ago

Which changes do I need to make?

On Tue, Apr 23, 2019 at 10:37 David Shanske notifications@github.com wrote: When I run it, I get... $_SERVER['HTTP_AUTHORIZATION'] is unavailable on this server. You may need to change some configurations to get tools working.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

dshanske commented 5 years ago

Who is your hosting provider?

Changelingmx commented 5 years ago

gandi.net.

On Tue, Apr 23, 2019 at 10:54 David Shanske notifications@github.com wrote: Who is your hosting provider?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

dshanske commented 5 years ago

Try adding this to your .htaccess file SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Changelingmx commented 5 years ago

I don't have one of those.

On Tue, Apr 23, 2019 at 1:10 PM David Shanske notifications@github.com wrote:

Try adding this to your .htaccess file SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/aaronpk/Aperture/issues/71#issuecomment-485892694, or mute the thread https://github.com/notifications/unsubscribe-auth/ALREWCHO3QXPD3QB5RB7U4TPR47JZANCNFSM4HEDM2IA .

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

dshanske commented 5 years ago

https://docs.gandi.net/en/simple_hosting/tutorials/htaccess.html#step-2-make-a-htaccess-file

Gandi.net says it will support uploading one. The alternative is to reach out to them about the filtering on their side.

Changelingmx commented 5 years ago

How do we know the filtering is on their end? What do I tell them?

On Tue, Apr 23, 2019 at 13:37 David Shanske notifications@github.com wrote: https://docs.gandi.net/en/simple_hosting/tutorials/htaccess.html#step-2-make-a-htaccess-file

Gandi.net says it will support uploading one. The alternative is to reach out to them about the filtering on their side.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

dshanske commented 5 years ago

Tell them the server is not allowing an HTTP_AUTHORIZATION header through. They should know what that is.

Changelingmx commented 5 years ago

What is the name of the header?

On Tue, Apr 23, 2019 at 2:26 PM David Shanske notifications@github.com wrote:

Tell them the server is not allowing an HTTP_AUTHORIZATION header through. They should know what that is.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/aaronpk/Aperture/issues/71#issuecomment-485920433, or mute the thread https://github.com/notifications/unsubscribe-auth/ALREWCBQJO62CI4HDRTSFELPR5IFZANCNFSM4HEDM2IA .

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

dshanske commented 5 years ago

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization

Changelingmx commented 5 years ago

I just tried making .htacces file, and I'm getting the same results. I will also be submitting your source code to Gandi for further troubleshooting.

On Tue, Apr 23, 2019 at 12:59 PM Randy Reed randy@starshipchangeling.net wrote:

gandi.net.

On Tue, Apr 23, 2019 at 10:54 David Shanske notifications@github.com wrote: Who is your hosting provider?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

-- Randy Reed E-mail: randy@starshipchangeling.net Webiste: https://www.starshipchangeling.net

Changelingmx commented 5 years ago

Okay. It's fixed. I'm marking this as closed. Thank you to everyone for your assistance.

Changelingmx commented 5 years ago

This isssue is resolved.

aaronpk commented 5 years ago

Can you please clarify what the fix was for people who find this thread later?