Comments (5)
One step further;
Added this:
@app.route('/.well-known/acme-challenge/path:filename', methods=['GET','POST'])
async def send_certbot_challenge(filename):
if request.method == 'GET':
return await send_from_directory('./.well-known/acme-challenge/', filename)
When i run the server:
hypercorn --bind ec2-18-222-XXX-XXX.us-east-2.compute.amazonaws.com:80 vote:app
and then:
sudo certbot certonly --webroot -w /home/ubuntu/vote -d sitename.nl
the certificate installs...
But now i still get a timeout running the site.
I kill the server on port 80, and then restart it like this:
hypercorn --bind ec2-18-222-XXX-XXX.us-east-2.compute.amazonaws.com:**443** vote:app
Still running with port 80 gives a working site on http. The ports (ec2 security group) 80 and 443 are open to all IP's. This security group is also used for the flask/apache project, and works there for https.
Any suggestions??
from quart.
hypercorn --certfile /etc/letsencrypt/csr/0006_csr-certbot.pem --keyfile /etc/letsencrypt/keys/0006_key-certbot.pem --bind ec2-18-222-xxx-xxx.us-east-2.compute.amazonaws.com:443 vote:app
Tried this as well but this gives error:
SSLError: [SSL] PEM lib (_ssl.c:3717)
hypercorn/config.py in create_ssl_context at line 107
try:
context.set_npn_protocols(["h2", "http/1.1"])
except NotImplementedError:
pass # NPN is not necessarily available
context.load_cert_chain(certfile=self.certfile, keyfile=self.keyfile)
if self.ca_certs is not None:
context.load_verify_locations(self.ca_certs)
return context
from quart.
I'm not familiar with certbot, but you seem to have that working. The SSLError seems to suggest it has an issue with the keyfile, are you sure /etc/letsencrypt/keys/0006_key-certbot.pem
is the private key? This could be the relevant answer.
from quart.
Hi,
Thanks!! You were totally right. Sorry for wasting your precious time.
hypercorn --certfile /etc/letsencrypt/live/sitename.nl/cert.pem --keyfile /etc/letsencrypt/live/sitename.nl/privkey.pem --bind ec2-18-222-xxx-xxx.us-east-2.compute.amazonaws.com:443 vote:app
This did the trick. All is running very well :)
from quart.
Great, I'm glad you figured it out.
from quart.
Related Issues (20)
- ResourceWarning: Unclosed file <tempfile.SpooledTemporaryFile object at 0...> in form handling HOT 1
- Server sent events seem to be capped at 6 connections HOT 1
- DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). HOT 2
- support insecure bind HOT 2
- Cannot load `QUART_` prefixed environment variables HOT 1
- AttributeError: 'Config' object has no attribute 'from_json' HOT 1
- async function support in url_defaults and url_value_preprocessor HOT 1
- incorrect display img logo on https://quart.palletsprojects.com/en/latest/ HOT 1
- Remove poetry from examples in documentation HOT 2
- Allow kwargs in Quart.test_client for custom test client implementations HOT 1
- unix socket support HOT 1
- reload() puts comman name after command line arguments HOT 2
- Hot reload does not work within poetry scripts HOT 2
- New doc contribution: Add a doc to integrate Quart with BentoML HOT 1
- The parameter of ContentRange in quart.wrappers.Response._process_range_request is not correct.
- Handling CTRL+C for websockets [linux] HOT 2
- 'quart.app' vs 'app' for log level configuration via dictConfig
- [Docs] AttributeError: 'async_generator' object has no attribute 'test_client'
- after_this_websocket is not called if the client disconnects?
- Background tasks can disappear mid-execution HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quart.