-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
204 - No content #14
Comments
For now, revert to jazeee:spiderable-longer-timeout 1.2.2 which works, but does not handle 404s. |
@Buom01 At first try to access node app directly without proxy, could you provide a link (should be with port, like 3000, actually I've tried 300 port but got no response)? |
@jazeee I've never meet such issue before |
Sadly, when I talked about proxy, I wanted to say a reverse proxy created by my hoster to get the 80 port (shared hosting...).
... Now I remeber that my hoster was recently under maintenance, and I think that they had changed their proxy config, (...). Solution found ! process.env.ROOT_URL = "http://" + process.env.OPENSHIFT_NODEJS_IP +":"+process.env.OPENSHIFT_NODEJS_PORT'; And not like (not to http://test-buom01.rhcloud.com/) process.env.ROOT_URL = "http://" + (process.env.OPENSHIFT_APP_DNS || "localhost:8000"); An idea is to get it from $PORT and $BIND_IP env variables and not from $ROOT_URL. (I dont know the default value of $ROOT_URL)
Thank you very much 👍 |
Ok, sounds like it was a configuration/maintenance issue. |
I found that this issue does exist, and is due to a bug in the phantomjs script. It appears to depend on whether one uses a proxy, or similar. For example, if one uses nginx in front of meteor, for SSL services, for example. One way to test is, create a meteor server, with nginx wrapper for SSL. Then, test the phantomjs script: phantomjs --load-images=no --ssl-protocol=TLSv1 --ignore-ssl-errors=true --web-security=false jazeee-meteor-spiderable/lib/phantom_script.js https://your-server This returns a 204. The reason is that https://github.com/jazeee/jazeee-meteor-spiderable/blob/master/lib/phantom_script.js#L60 is not correct.
EDIT: |
Without this logic statement you will not receive status code on redirects
|
I believe developer should workaround with proxy server, cause we are using nginx and SSL on our production stage with this package without any issues.
|
I don't think it makes sense to allow rely on any arbitrary resource response code. For example, as part of the processing, I see a response code of 204, for URL: This is the last URL that is processed before phantomJS finishes. It is quite complex to debug these issues, and other users will have serious problems that will appear random. For example, it works locally, but doesn't work due to some arbitrary nginx configuration, version, or other arbitrary server setup/load etc. Since this issue affects the majority of normal cases, we will have to look at other options for redirects. |
I believe it should work with any kind of redirects. BTW http-redirect is handled by |
Quite possible. My changes seem to also break 404, but I think we will have to be very careful about these issues. (In a separate ticket). Of course, the primary goal is to make the successful paths work, in most people's scenarios. |
Just a note, if I log all response statuses during a redirect test, within onResourceReceived, I get about 15x Not sure if it is a PhantomJS issue, a polling issue, or something else. In any case, I doubt that we can count on the intermediate status codes being representative of the page's final code. In reality, I think we have to specify something else, such as adding Spiderable.responseCode = 404, to the IronRouter/Meteor code. |
It is easily solved at this statement |
Hi,
I have a probleme with my website, what I try to do, my pages return nothing with a 204 HTTP status code with
?_escaped_fragment_=
, else, the 404 page send correctly the 404 HTTP status code, but is also emptyNotes:
Code:
spiderable-test.js
spiderable-test.html
Mongo content:
Complete informations
Just its content
My building home made script:
.build2.sh
.compress2.sh
.deploy2.sh
Packages
Se it yourselft
http://test-buom01.rhcloud.com/
http://test-buom01.rhcloud.com/?_escaped_fragment_=
Conclusion
Anybody can help me ?
What can I do ?
Thank you for reading, and sorry if I have a bad English
The text was updated successfully, but these errors were encountered: