diff --git a/Doc/howto/curses.rst b/Doc/howto/curses.rst
index ea62b1c..8547606 100644
--- a/Doc/howto/curses.rst
+++ b/Doc/howto/curses.rst
@@ -538,7 +538,7 @@
 implement, but because no one has needed them yet.  Also, Python
 doesn't yet support the menu library associated with ncurses.
 Patches adding support for these would be welcome; see
-`the Python Developer's Guide <http://docs.python.org/devguide/>`_ to
+`the Python Developer's Guide <https://docs.python.org/devguide/>`_ to
 learn more about submitting patches to Python.
 
 * `Writing Programs with NCURSES <http://invisible-island.net/ncurses/ncurses-intro.html>`_:
diff --git a/Doc/howto/descriptor.rst b/Doc/howto/descriptor.rst
index 4a77052..dc5350e 100644
--- a/Doc/howto/descriptor.rst
+++ b/Doc/howto/descriptor.rst
@@ -127,7 +127,7 @@
 :source:`Objects/typeobject.c`.  and a pure Python equivalent can be found in
 `Guido's Tutorial`_.
 
-.. _`Guido's Tutorial`: http://www.python.org/2.2.3/descrintro.html#cooperation
+.. _`Guido's Tutorial`: https://www.python.org/2.2.3/descrintro.html#cooperation
 
 The details above show that the mechanism for descriptors is embedded in the
 :meth:`__getattribute__()` methods for :class:`object`, :class:`type`, and
diff --git a/Doc/howto/logging-cookbook.rst b/Doc/howto/logging-cookbook.rst
index 82c8f51..e77e730 100644
--- a/Doc/howto/logging-cookbook.rst
+++ b/Doc/howto/logging-cookbook.rst
@@ -649,7 +649,7 @@
 not make use of :mod:`multiprocessing` at present, though they may do so in the
 future. Note that at present, the :mod:`multiprocessing` module does not provide
 working lock functionality on all platforms (see
-http://bugs.python.org/issue3770).
+https://bugs.python.org/issue3770).
 
 .. currentmodule:: logging.handlers
 
diff --git a/Doc/howto/pyporting.rst b/Doc/howto/pyporting.rst
index 9d7e859..b997df7 100644
--- a/Doc/howto/pyporting.rst
+++ b/Doc/howto/pyporting.rst
@@ -588,7 +588,7 @@
 thus helping provide information for this document and its various revisions
 over the years):
 
-* http://wiki.python.org/moin/PortingPythonToPy3k
+* https://wiki.python.org/moin/PortingPythonToPy3k
 * http://python3porting.com/
 * http://docs.pythonsprints.com/python3_porting/py-porting.html
 * http://techspot.zzzeek.org/2011/01/24/zzzeek-s-guide-to-python-3-porting/
@@ -602,23 +602,23 @@
 
 
 
-.. _2to3: http://docs.python.org/2/library/2to3.html
+.. _2to3: https://docs.python.org/2/library/2to3.html
 .. _3to2: https://pypi.python.org/pypi/3to2
 .. _Cheeseshop: PyPI_
 .. _coverage: https://pypi.python.org/pypi/coverage
 .. _future: http://python-future.org/
 .. _modernize: https://github.com/mitsuhiko/python-modernize
 .. _Porting to Python 3: http://python3porting.com/
-.. _PyPI: http://pypi.python.org/
-.. _Python 2.2: http://www.python.org/2.2.x
-.. _Python 2.5: http://www.python.org/2.5.x
-.. _Python 2.6: http://www.python.org/2.6.x
-.. _Python 2.7: http://www.python.org/2.7.x
-.. _Python 2.5: http://www.python.org/2.5.x
-.. _Python 3.3: http://www.python.org/3.3.x
+.. _PyPI: https://pypi.python.org/
+.. _Python 2.2: https://www.python.org/2.2.x
+.. _Python 2.5: https://www.python.org/2.5.x
+.. _Python 2.6: https://www.python.org/2.6.x
+.. _Python 2.7: https://www.python.org/2.7.x
+.. _Python 2.5: https://www.python.org/2.5.x
+.. _Python 3.3: https://www.python.org/3.3.x
 .. _Python 3 Packages: https://pypi.python.org/pypi?:action=browse&c=533&show=all
 .. _Python 3 Q & A: http://ncoghlan-devs-python-notes.readthedocs.org/en/latest/python3/questions_and_answers.html
-.. _python-porting: http://mail.python.org/mailman/listinfo/python-porting
+.. _python-porting: https://mail.python.org/mailman/listinfo/python-porting
 .. _six: https://pypi.python.org/pypi/six
 .. _tox: https://pypi.python.org/pypi/tox
 .. _trove classifiers: https://pypi.python.org/pypi?%3Aaction=list_classifiers
diff --git a/Doc/howto/urllib2.rst b/Doc/howto/urllib2.rst
index 584e8a6..1f0eb7d 100644
--- a/Doc/howto/urllib2.rst
+++ b/Doc/howto/urllib2.rst
@@ -26,7 +26,7 @@
 
         A tutorial on *Basic Authentication*, with examples in Python.
 
-**urllib.request** is a `Python <http://www.python.org>`_ module for fetching URLs
+**urllib.request** is a Python module for fetching URLs
 (Uniform Resource Locators). It offers a very simple interface, in the form of
 the *urlopen* function. This is capable of fetching URLs using a variety of
 different protocols. It also offers a slightly more complex interface for
diff --git a/Doc/howto/webservers.rst b/Doc/howto/webservers.rst
index 6fa51da..d638847 100644
--- a/Doc/howto/webservers.rst
+++ b/Doc/howto/webservers.rst
@@ -26,7 +26,7 @@
    While this HOWTO tries to give an overview of Python in the web, it cannot
    always be as up to date as desired.  Web development in Python is rapidly
    moving forward, so the wiki page on `Web Programming
-   <http://wiki.python.org/moin/WebProgramming>`_ may be more in sync with
+   <https://wiki.python.org/moin/WebProgramming>`_ may be more in sync with
    recent development.
 
 
@@ -86,7 +86,7 @@
      applications, instead of presenting a "500 Internal Server Error" message
 
    The Python wiki features a page on `CGI scripts
-   <http://wiki.python.org/moin/CgiScripts>`_ with some additional information
+   <https://wiki.python.org/moin/CgiScripts>`_ with some additional information
    about CGI in Python.
 
 
@@ -309,7 +309,7 @@
     WSGIServer(app).run()
 
 This is a simple WSGI application, but you need to install `flup
-<http://pypi.python.org/pypi/flup/1.0>`_ first, as flup handles the low level
+<https://pypi.python.org/pypi/flup/1.0>`_ first, as flup handles the low level
 FastCGI access.
 
 .. seealso::
@@ -486,7 +486,7 @@
 
    There are far more components than can be presented here.  The Python wiki
    has a page about these components, called
-   `Web Components <http://wiki.python.org/moin/WebComponents>`_.
+   `Web Components <https://wiki.python.org/moin/WebComponents>`_.
 
 
 Templates
@@ -528,7 +528,7 @@
 
    There are many template engines competing for attention, because it is
    pretty easy to create them in Python.  The page `Templating
-   <http://wiki.python.org/moin/Templating>`_ in the wiki lists a big,
+   <https://wiki.python.org/moin/Templating>`_ in the wiki lists a big,
    ever-growing number of these.  The three listed above are considered "second
    generation" template engines and are a good place to start.
 
@@ -578,11 +578,11 @@
 
 .. seealso::
 
-   * `Persistence Tools <http://wiki.python.org/moin/PersistenceTools>`_ lists
+   * `Persistence Tools <https://wiki.python.org/moin/PersistenceTools>`_ lists
      possibilities on how to save data in the file system.  Some of these
      modules are part of the standard library
 
-   * `Database Programming <http://wiki.python.org/moin/DatabaseProgramming>`_
+   * `Database Programming <https://wiki.python.org/moin/DatabaseProgramming>`_
      helps with choosing a method for saving data
 
    * `SQLAlchemy <http://www.sqlalchemy.org/>`_, the most powerful OR-Mapper
@@ -732,9 +732,9 @@
 .. seealso::
 
    The Python wiki contains an extensive list of `web frameworks
-   <http://wiki.python.org/moin/WebFrameworks>`_.
+   <https://wiki.python.org/moin/WebFrameworks>`_.
 
    Most frameworks also have their own mailing lists and IRC channels, look out
    for these on the projects' web sites.  There is also a general "Python in the
    Web" IRC channel on freenode called `#python.web
-   <http://wiki.python.org/moin/PoundPythonWeb>`_.
+   <https://wiki.python.org/moin/PoundPythonWeb>`_.
