diff --git a/rst/bestpractices.rst b/rst/bestpractices.rst
index ef6f957ccf2..4cba812f71c 100644
--- a/rst/bestpractices.rst
+++ b/rst/bestpractices.rst
@@ -42,7 +42,7 @@ Playbooks should be organized like this::
                stop.yml 
 
 Any directories or files not needed can be omitted.  Not all modules may require `vars` or `files` sections, though most
-will require `handlers`, `tasks`, and `templates`.  To review what each of these sections do, see ref:`playbooks` and ref:`playbooks2`.
+will require `handlers`, `tasks`, and `templates`.  To review what each of these sections do, see :doc:`playbooks` and :doc:`playbooks2`.
 
 The acme/setup.yml playbook would be as simple as::
 
diff --git a/rst/faq.rst b/rst/faq.rst
index f4159a22daa..ab910a521a0 100644
--- a/rst/faq.rst
+++ b/rst/faq.rst
@@ -173,7 +173,7 @@ them probably isn't appropriate, which is why ansible-pull exists.
 This tool is designed for running out of git and cron, and can scale to any
 number of hosts.  Ansible-pull uses local connections versus SSH, but can be
 easily bootstrapped or reconfigured just using SSH.  There is more information
-available about this in the ref:`playbooks2` section.  The self-bootstrapping
+available about this in the :doc:`playbooks2` section.  The self-bootstrapping
 and ease of use are ansible are still retained, even when switching to the pull
 model.