Skip to content

Commit ba039fb

Browse files
Remove dead internal and external links
1 parent ae8c323 commit ba039fb

8 files changed

+15
-16
lines changed

content/add-recaptcha-to-your-flask-application.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Tags: Flask, HOWTO, Python
66
Slug: add-recaptcha-to-your-flask-application
77
Status: published
88

9-
In this [HOWTO]({category}howto), I will demonstrate how to easily integrate the [Google reCAPTCHA](https://www.google.com/recaptcha/intro/) service into a [Flask](http://flask.pocoo.org/) web application using [Flask-WTF](https://flask-wtf.readthedocs.io/en/stable/).
9+
In this [HOWTO]({category}howto), I will demonstrate how to easily integrate the [Google reCAPTCHA](https://www.google.com/recaptcha/intro/) service into a [Flask](http://flask.pocoo.org/) web application using [Flask-WTF](https://wtforms.readthedocs.io/en/3.0.x/).
1010

1111
The following cartoon depicts the end result.
1212

@@ -122,9 +122,9 @@ Now we update Flask to hook into the recaptcha service.
122122

123123
First, look at our form model, modeled in [models.py](https://github.com/hatdropper1977/flask-recaptcha/blob/master/models.py).
124124

125-
You will see we use [Flask-WTF](https://flask-wtf.readthedocs.io/en/stable/) to generate our form.
125+
You will see we use [Flask-WTF](https://wtforms.read/thedocs.io/en/3.0.x/) to generate our form.
126126

127-
All we need to do is import [RecaptchaField](http://flask-wtf.readthedocs.io/en/stable/form.html?highlight=recaptcha).
127+
All we need to do is import **RecaptchaField**.
128128

129129
```python
130130
from flask_wtf import Form, RecaptchaField

content/fast-and-easy-automl-optimize.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,7 @@ The model predicts our strong wine deserves a score of **5.194**
405405
The AutoML Tables Beta also service provides a REST API for machines to submit predictions to the model.
406406
407407
## Billing
408-
The AutoML Tables Beta service costs significantly less than our [Vision model](gcp-automl-vision.md). We paid $28 for one and a half hour of compute time.
408+
The AutoML Tables Beta service costs significantly less than our [Vision model]({filename}/gcp-automl-vision.md). We paid $28 for one and a half hour of compute time.
409409
410410
![Billing Metering]({filename}/images/Fast_And_Easy_Automl_Optimize/37_Billing.png)
411411

content/how-to-configure-s3-websites-to-use-https-part-2.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ In part two of this tutorial (this post), we will:
2929
6. Create CloudFront distribution
3030
7. Point DNS (Route 53) to CloudFront distribution
3131

32-
As a reminder, to show the process in action, I demonstrate how to set up HTTPS with Redirection on S3 using a real world site, [***www.siliconebeltway.com***](www.siliconebeltway.com). In this demonstration, you would simply replace ***siliconebeltway*** with your website's domain name.
32+
As a reminder, to show the process in action, I demonstrate how to set up HTTPS with Redirection on S3 using a real world site, [***www.siliconebeltway.com***](https://www.siliconebeltway.com). In this demonstration, you would simply replace ***siliconebeltway*** with your website's domain name.
3333

3434
As described in [part one]({filename}/how-to-configure-s3-websites-to-use-https-part-1.md), the following diagram depicts our desired Architecture:
3535

content/how-to-install-opendaylight-as-a-service-on-ubuntu.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ Status: published
88

99
[OpenDaylight](https://www.opendaylight.org/) allows cloud engineers to programmatically deploy, configure and control virtual network services. As written on the OpenDaylight website, ODL helps Internet Service Providers, Academics and Cloud Service Providers to enable the following services:
1010

11-
- [On-demand service delivery](https://www.opendaylight.org/use-cases-and-users/by-function/automated-service-delivery)
11+
- On-demand service delivery
1212
- Programmatic acquisition of network transport or Virtual Private Network connections
13-
- [Network Function Virtualization](https://www.opendaylight.org/use-cases-and-users/by-function/cloud-and-nfv)
14-
- Add new network services to your existing Cloud Provider's (e.g. [OpenStack](https://wiki.opendaylight.org/view/OpenStack_and_OpenDaylight) ) network stack
15-
- [Network Resource Optimization](https://www.opendaylight.org/use-cases-and-users/by-function/network-resource-optimization)
13+
- Network Function Virtualization
14+
- Add new network services to your existing Cloud Provider's (e.g. OpenStack) network stack
15+
- Network Resource Optimization
1616
- Load balance, prioritize and pre-empt traffic to reduce congestion and idle links
17-
- [Situational Awareness](https://www.opendaylight.org/use-cases-and-users/by-function/visibility-and-control)
17+
- Situational Awareness
1818
- Get granular, instantaneous metrics plumbed from each and every data frame in your networks
1919

2020
![OpenDaylight Logo]({filename}/images/How_To_Install_Opendaylight_On_Centos_Or_Ubuntu/00_ODL.png)

content/install-the-monacoin-wallet-on-ubuntu.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ $ ./monacoind --printtoconsole
319319
...a whole bunch of stuff on the screen...
320320
```
321321
322-
Now that we started the Daemon, we can plug into it with the Monacoin client, also known as a [command line interface (CLI)](https://en.wikipedia.org/wiki/Command-line_interface`). Leave the Daemon's terminal running, and then open a ***NEW*** terminal. From the new terminal, run these commands:
322+
Now that we started the Daemon, we can plug into it with the Monacoin client, also known as a [command line interface (CLI)](https://en.wikipedia.org/wiki/Command-line_interface). Leave the Daemon's terminal running, and then open a ***NEW*** terminal. From the new terminal, run these commands:
323323
324324
```bash
325325
# From another terminal

content/part-5-asynchronous-tasks-with-aws-elasticsearch-sqs-flask-and-celery.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Welcome to the fifth part of this HOWTO, where we will call a remote web service
1818
- [Part Two:]({filename}/part-2-let-internet-facing-forms-update-elasticsearch-via-flask.md)
1919
- Deploy a [Flask](http://flask.pocoo.org/) web server
2020
- Program the Flask web server to proxy and filter user inputs to ES
21-
- Learn the Python [WTForms](https://wtforms.readthedocs.io/en/latest/) library and the Python [Elasticsearch Domain Specific Language (DSL)](http://elasticsearch-dsl.readthedocs.io/en/latest/)
21+
- Learn the Python [WTForms](https://wtforms.readthedocs.io/en/3.0.x/) library and the Python [Elasticsearch Domain Specific Language (DSL)](http://elasticsearch-dsl.readthedocs.io/en/latest/)
2222
- [Part Three:]({filename}/part-3-professional-form-validation-with-bootstrap.md)
2323
- Use [Bootstrap](http://getbootstrap.com/) for form validation
2424
- Give the Proxy a professional, polished appearance

content/reliable-multicast-at-internet-scale-part-2-lct-webrc-and-fec.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,7 @@ As the name suggests, LCT uses layered coding to produce a coded stream of packe
2424

2525
Imagine a web TV application split into three layers. A RX that joins the first channel would receive a black and white picture. An RX that had more capacity would join the first and second channel and receive a color picture. An RX with transparent capacity would be able to join all three layers, and receive a HD color picture. The key to this example is that the sender does not duplicate any data between layers. The RX joins successive layers to receive a higher quality picture at the cost of using more bandwidth. [[RFC5651](https://tools.ietf.org/html/rfc5651) 6]
2626

27-
![LCT Diagram]({filename}/images/Reliable_Multicast_at_Internet_Scale_Part_2_LCT_WEBRC_and_FEC
28-
/rm_1_2_lct_diagram-1024x650.png)
27+
![LCT Diagram]({filename}/images/Reliable_Multicast_at_Internet_Scale_Part_2_LCT_WEBRC_and_FEC/rm_1_2_lct_diagram-1024x650.png)
2928

3029
**LCT Operations**
3130

content/use-s3stat-to-troubleshoot-your-migration-from-wordpress-to-s3.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ Amazon does not provide a turnkey solution for this user story, so I faced two h
3636
- Cost
3737
- The Amazon approach costs ~$15/month and the cheapest Elastic cloud approach costs [$45/month](https://www.elastic.co/cloud/as-a-service/subscriptions)
3838
- Effort
39-
- The Amazon approach requires a significant amount of [integration and troubleshooting](https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-aws-integrations.html#es-aws-integrations-s3-lambda-es) whereas the Elastic cloud approach just requires the deployment of a few [Logstash filters](https://medium.com/@LifeAndDev/using-the-elk-stack-to-analyze-your-s3-logs-981cb5cc5378)
39+
- The Amazon approach requires a significant amount of [integration and troubleshooting](https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-aws-integrations.html#es-aws-integrations-s3-lambda-es) whereas the Elastic cloud approach just requires the deployment of a few Logstash filters
4040
- Turn key
4141
- Approach
4242
- Use a __push button__ online service to ingest, parse and analyze the logs
@@ -62,7 +62,7 @@ I decided to try s3stat because their [cheap bastard plan](https://www.s3stat.co
6262
>
6363
> 2. __Blog about S3STAT__, explaining to the world how awesome the product is, and how generous we are being to give it to a deadbeat like yourself for free.
6464
>
65-
> 3. [Send us an email](info@s3stat.com) showing us where to find that blog post.
65+
> 3. Send us an email showing us where to find that blog post.
6666
>
6767
> 4. Get Hooked Up with a free, unlimited license for S3STAT.
6868

0 commit comments

Comments
 (0)