diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index f764b03..36f7db0 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -32,12 +32,12 @@
 o CONFIGURATION-745:  Add the special key "includeoptional" for properties files. Thanks to Gary Gregory.
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -97,12 +97,12 @@
 o CONFIGURATION-728:  Update Apache Commons Text from 1.5 to 1.6.
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 
 =============================================================================
@@ -197,12 +197,12 @@
   o Update optional dependency Jackson from 2.8.9 to 2.9.6.
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -290,12 +290,12 @@
   Update platform requirement from Java 6 to 7.
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -366,12 +366,12 @@
   used.
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -442,12 +442,12 @@
   older version still works.)
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions
 on how to submit bug reports, patches, or suggestions for improvement, see the
 Apache Commons Configuration website:
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -468,7 +468,7 @@
 Configuration 1.x; there have been incompatible changes in many areas that
 require adaptations on client code. A migration guide is available at
 
-http://commons.apache.org/configuration/userguide/upgradeto2_0.html
+https://commons.apache.org/configuration/userguide/upgradeto2_0.html
 
 that describes all breaking changes and helps when upgrading to the new
 version. One obvious breaking change is the renaming of the main package
@@ -480,7 +480,7 @@
 The user's guide has been completely reworked to describe all features of the
 new version. It can be found at
 
-http://commons.apache.org/configuration/userguide/user_guide.html
+https://commons.apache.org/configuration/userguide/user_guide.html
 
 Changes:
 ========
@@ -524,7 +524,7 @@
 related to changes introduced in the 2.0 version.
 
 Below is a list of all changes in this version. Please refer to the clirr
-report at http://commons.apache.org/proper/commons-configuration/clirr-report.html
+report at https://commons.apache.org/proper/commons-configuration/clirr-report.html
 for information about changes which break binary compatibility.
 
 Changes:
@@ -555,12 +555,12 @@
 
 Commons Configuration 2.0-beta2 requires Java 1.6 or higher.
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions
 on how to submit bug reports, patches, or suggestions for improvement, see the
 Apache Commons Configuration website:
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -616,12 +616,12 @@
                       are added to the configuration with an empty String as value.
 o CONFIGURATION-427:  XMLPropertyListConfiguration can now save arrays in the correct form.
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
 
 =============================================================================
 
@@ -636,13 +636,13 @@
 (and to prevent jar and dependency hell), the top-level package and the Maven
 coordinates have been changed. There is an upgrade guide available at
 
-http://commons.apache.org/configuration/userguide/upgradeto2_0.html
+https://commons.apache.org/configuration/userguide/upgradeto2_0.html
 
 describing the most important breaking changes. Be sure to read this
 document if you want to switch from a 1.x version to this new version. The
 user's guide which can be found at
 
-http://commons.apache.org/configuration/userguide/user_guide.html
+https://commons.apache.org/configuration/userguide/user_guide.html
 
 has been reworked to cover all the new and changed features.
 
@@ -823,9 +823,9 @@
                       configuration's ConversionHandler, this behavior can be changed.
 
 
-Historical list of changes: http://commons.apache.org/proper/commons-configuration/changes-report.html
+Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html
 
 For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
 patches, or suggestions for improvement, see the Apache Commons Configuration website:
 
-http://commons.apache.org/proper/commons-configuration/
+https://commons.apache.org/proper/commons-configuration/
diff --git a/pom.xml b/pom.xml
index a6b3b1f..a5fe6ee 100644
--- a/pom.xml
+++ b/pom.xml
@@ -36,7 +36,7 @@
         various formats
     </description>
 
-  <url>http://commons.apache.org/proper/commons-configuration/</url>
+  <url>https://commons.apache.org/proper/commons-configuration/</url>
 
   <issueManagement>
     <system>jira</system>
diff --git a/src/main/java/org/apache/commons/configuration2/BaseConfigurationXMLReader.java b/src/main/java/org/apache/commons/configuration2/BaseConfigurationXMLReader.java
index dc1a4e8..2b3e435 100644
--- a/src/main/java/org/apache/commons/configuration2/BaseConfigurationXMLReader.java
+++ b/src/main/java/org/apache/commons/configuration2/BaseConfigurationXMLReader.java
@@ -26,7 +26,7 @@
  * it is possible to perform XML processing on a configuration object.</p>
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class BaseConfigurationXMLReader extends ConfigurationXMLReader
diff --git a/src/main/java/org/apache/commons/configuration2/ConfigurationXMLReader.java b/src/main/java/org/apache/commons/configuration2/ConfigurationXMLReader.java
index 87b8b0d..d515458 100644
--- a/src/main/java/org/apache/commons/configuration2/ConfigurationXMLReader.java
+++ b/src/main/java/org/apache/commons/configuration2/ConfigurationXMLReader.java
@@ -38,7 +38,7 @@
  * configuration classes.</p>
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public abstract class ConfigurationXMLReader implements XMLReader
diff --git a/src/main/java/org/apache/commons/configuration2/HierarchicalConfigurationConverter.java b/src/main/java/org/apache/commons/configuration2/HierarchicalConfigurationConverter.java
index aa1a8ff..045fa22 100644
--- a/src/main/java/org/apache/commons/configuration2/HierarchicalConfigurationConverter.java
+++ b/src/main/java/org/apache/commons/configuration2/HierarchicalConfigurationConverter.java
@@ -43,7 +43,7 @@
  * @see HierarchicalConfiguration
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 abstract class HierarchicalConfigurationConverter
 {
diff --git a/src/main/java/org/apache/commons/configuration2/INIConfiguration.java b/src/main/java/org/apache/commons/configuration2/INIConfiguration.java
index 49e7a6c..907f99d 100644
--- a/src/main/java/org/apache/commons/configuration2/INIConfiguration.java
+++ b/src/main/java/org/apache/commons/configuration2/INIConfiguration.java
@@ -209,7 +209,7 @@
  * As this class extends {@link AbstractConfiguration}, all basic features
  * like variable interpolation, list handling, or data type conversions are
  * available as well. This is described in the chapter
- * <a href="http://commons.apache.org/proper/commons-configuration/userguide/howto_basicfeatures.html">
+ * <a href="https://commons.apache.org/proper/commons-configuration/userguide/howto_basicfeatures.html">
  * Basic features and AbstractConfiguration</a> of the user's guide.
  * </p>
  * <p>
@@ -218,7 +218,7 @@
  * </p>
  *
  * @author <a
- *         href="http://commons.apache.org/configuration/team-list.html">Commons
+ *         href="https://commons.apache.org/configuration/team-list.html">Commons
  *         Configuration team</a>
  * @since 1.6
  */
diff --git a/src/main/java/org/apache/commons/configuration2/PatternSubtreeConfigurationWrapper.java b/src/main/java/org/apache/commons/configuration2/PatternSubtreeConfigurationWrapper.java
index 3cd8511..2a0393c 100644
--- a/src/main/java/org/apache/commons/configuration2/PatternSubtreeConfigurationWrapper.java
+++ b/src/main/java/org/apache/commons/configuration2/PatternSubtreeConfigurationWrapper.java
@@ -42,7 +42,7 @@
  * such as Spring it allows components to be injected with subtrees of the configuration.
  * @since 1.6
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class PatternSubtreeConfigurationWrapper extends BaseHierarchicalConfiguration
diff --git a/src/main/java/org/apache/commons/configuration2/PrefixedKeysIterator.java b/src/main/java/org/apache/commons/configuration2/PrefixedKeysIterator.java
index 9d0b49a..031e042 100644
--- a/src/main/java/org/apache/commons/configuration2/PrefixedKeysIterator.java
+++ b/src/main/java/org/apache/commons/configuration2/PrefixedKeysIterator.java
@@ -27,7 +27,7 @@
  * <p>This class is basically a stripped-down version of the
  * {@code FilterIterator} class of Commons Collections</p>
  *
- * @author <a href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * @author <a href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 class PrefixedKeysIterator implements Iterator<String>
 {
diff --git a/src/main/java/org/apache/commons/configuration2/PropertiesConfiguration.java b/src/main/java/org/apache/commons/configuration2/PropertiesConfiguration.java
index ffff687..f0a13c6 100644
--- a/src/main/java/org/apache/commons/configuration2/PropertiesConfiguration.java
+++ b/src/main/java/org/apache/commons/configuration2/PropertiesConfiguration.java
@@ -187,7 +187,7 @@
  * <p>As this class extends {@link AbstractConfiguration}, all basic features
  * like variable interpolation, list handling, or data type conversions are
  * available as well. This is described in the chapter
- * <a href="http://commons.apache.org/proper/commons-configuration/userguide/howto_basicfeatures.html">
+ * <a href="https://commons.apache.org/proper/commons-configuration/userguide/howto_basicfeatures.html">
  * Basic features and AbstractConfiguration</a> of the user's guide. There is
  * also a separate chapter dealing with
  * <a href="commons.apache.org/proper/commons-configuration/userguide/howto_properties.html">
diff --git a/src/main/java/org/apache/commons/configuration2/XMLConfiguration.java b/src/main/java/org/apache/commons/configuration2/XMLConfiguration.java
index 83f0151..b5c3470 100644
--- a/src/main/java/org/apache/commons/configuration2/XMLConfiguration.java
+++ b/src/main/java/org/apache/commons/configuration2/XMLConfiguration.java
@@ -180,7 +180,7 @@
  * <p>
  * More information about the basic functionality supported by
  * {@code XMLConfiguration} can be found at the user's guide at
- * <a href="http://commons.apache.org/proper/commons-configuration/userguide/howto_basicfeatures.html">
+ * <a href="https://commons.apache.org/proper/commons-configuration/userguide/howto_basicfeatures.html">
  * Basic features and AbstractConfiguration</a>. There is
  * also a separate chapter dealing with
  * <a href="commons.apache.org/proper/commons-configuration/userguide/howto_xml.html">
diff --git a/src/main/java/org/apache/commons/configuration2/beanutils/BeanDeclaration.java b/src/main/java/org/apache/commons/configuration2/beanutils/BeanDeclaration.java
index 9b6cca9..6d205b1 100644
--- a/src/main/java/org/apache/commons/configuration2/beanutils/BeanDeclaration.java
+++ b/src/main/java/org/apache/commons/configuration2/beanutils/BeanDeclaration.java
@@ -42,7 +42,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public interface BeanDeclaration
diff --git a/src/main/java/org/apache/commons/configuration2/beanutils/BeanFactory.java b/src/main/java/org/apache/commons/configuration2/beanutils/BeanFactory.java
index 87e43e8..0cee673 100644
--- a/src/main/java/org/apache/commons/configuration2/beanutils/BeanFactory.java
+++ b/src/main/java/org/apache/commons/configuration2/beanutils/BeanFactory.java
@@ -41,7 +41,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public interface BeanFactory
diff --git a/src/main/java/org/apache/commons/configuration2/builder/combined/CombinedConfigurationBuilder.java b/src/main/java/org/apache/commons/configuration2/builder/combined/CombinedConfigurationBuilder.java
index 0ae6080..985caf8 100644
--- a/src/main/java/org/apache/commons/configuration2/builder/combined/CombinedConfigurationBuilder.java
+++ b/src/main/java/org/apache/commons/configuration2/builder/combined/CombinedConfigurationBuilder.java
@@ -233,7 +233,7 @@
  *
  * @since 1.3
  * @author <a
- *         href="http://commons.apache.org/configuration/team-list.html">Commons
+ *         href="https://commons.apache.org/configuration/team-list.html">Commons
  *         Configuration team</a>
  */
 public class CombinedConfigurationBuilder extends BasicConfigurationBuilder<CombinedConfiguration>
diff --git a/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java b/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java
index fafb677..5362f22 100644
--- a/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java
+++ b/src/main/java/org/apache/commons/configuration2/convert/PropertyConverter.java
@@ -204,7 +204,7 @@
     /**
      * Convert the specified object into a Boolean. Internally the
      * {@code org.apache.commons.lang.BooleanUtils} class from the
-     * <a href="http://commons.apache.org/lang/">Commons Lang</a>
+     * <a href="https://commons.apache.org/lang/">Commons Lang</a>
      * project is used to perform this conversion. This class accepts some more
      * tokens for the boolean value of <b>true</b>, e.g. {@code yes} and
      * {@code on}. Please refer to the documentation of this class for more
diff --git a/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java b/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java
index 4cea821..ed84a08 100644
--- a/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java
+++ b/src/main/java/org/apache/commons/configuration2/interpol/ConfigurationInterpolator.java
@@ -40,7 +40,7 @@
  * </p>
  * <p>
  * {@code ConfigurationInterpolator} internally uses the {@code StringSubstitutor}
- * class from <a href="http://commons.apache.org/text">Commons Text</a>. Thus it
+ * class from <a href="https://commons.apache.org/text">Commons Text</a>. Thus it
  * supports the same syntax of variable expressions.
  * </p>
  * <p>
@@ -82,7 +82,7 @@
  *
  * @since 1.4
  * @author <a
- *         href="http://commons.apache.org/configuration/team-list.html">Commons
+ *         href="https://commons.apache.org/configuration/team-list.html">Commons
  *         Configuration team</a>
  */
 public class ConfigurationInterpolator
diff --git a/src/main/java/org/apache/commons/configuration2/interpol/ConstantLookup.java b/src/main/java/org/apache/commons/configuration2/interpol/ConstantLookup.java
index 2b00689..90bd6e1 100644
--- a/src/main/java/org/apache/commons/configuration2/interpol/ConstantLookup.java
+++ b/src/main/java/org/apache/commons/configuration2/interpol/ConstantLookup.java
@@ -47,7 +47,7 @@
  *
  * @since 1.4
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class ConstantLookup implements Lookup
@@ -156,7 +156,7 @@
      * needs regarding the class loaders to be used, it can hook in here. This
      * implementation delegates to the {@code getClass()} method of
      * Commons Lang's
-     * <code><a href="http://commons.apache.org/lang/api-release/org/apache/commons/lang/ClassUtils.html">
+     * <code><a href="https://commons.apache.org/lang/api-release/org/apache/commons/lang/ClassUtils.html">
      * ClassUtils</a></code>.
      *
      * @param className the name of the class to be loaded
diff --git a/src/main/java/org/apache/commons/configuration2/interpol/EnvironmentLookup.java b/src/main/java/org/apache/commons/configuration2/interpol/EnvironmentLookup.java
index 964476b..e029ca5 100644
--- a/src/main/java/org/apache/commons/configuration2/interpol/EnvironmentLookup.java
+++ b/src/main/java/org/apache/commons/configuration2/interpol/EnvironmentLookup.java
@@ -38,7 +38,7 @@
  * </p>
  *
  * @author <a
- *         href="http://commons.apache.org/configuration/team-list.html">Commons
+ *         href="https://commons.apache.org/configuration/team-list.html">Commons
  *         Configuration team</a>
  * @since 1.7
  * @deprecated Use {@link DefaultLookups#ENVIRONMENT}.
diff --git a/src/main/java/org/apache/commons/configuration2/interpol/ExprLookup.java b/src/main/java/org/apache/commons/configuration2/interpol/ExprLookup.java
index fd0d906..d0f7681 100644
--- a/src/main/java/org/apache/commons/configuration2/interpol/ExprLookup.java
+++ b/src/main/java/org/apache/commons/configuration2/interpol/ExprLookup.java
@@ -61,7 +61,7 @@
  *
  * @since 1.7
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 public class ExprLookup implements Lookup
 {
diff --git a/src/main/java/org/apache/commons/configuration2/io/DefaultFileSystem.java b/src/main/java/org/apache/commons/configuration2/io/DefaultFileSystem.java
index 21ed843..0d27b34 100644
--- a/src/main/java/org/apache/commons/configuration2/io/DefaultFileSystem.java
+++ b/src/main/java/org/apache/commons/configuration2/io/DefaultFileSystem.java
@@ -33,7 +33,7 @@
  * FileSystem that uses java.io.File or HttpClient
  * @since 1.7
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 public class DefaultFileSystem extends FileSystem
 {
@@ -273,7 +273,7 @@
      * Wraps the output stream so errors can be detected in the HTTP response.
      * @since 1.7
      * @author <a
-     * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+     * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
      */
     private static class HttpOutputStream extends VerifiableOutputStream
     {
diff --git a/src/main/java/org/apache/commons/configuration2/io/FileOptionsProvider.java b/src/main/java/org/apache/commons/configuration2/io/FileOptionsProvider.java
index 0827ae5..fbd48f1 100644
--- a/src/main/java/org/apache/commons/configuration2/io/FileOptionsProvider.java
+++ b/src/main/java/org/apache/commons/configuration2/io/FileOptionsProvider.java
@@ -23,7 +23,7 @@
  * configuration can implement this interface and register it with the FileSystem.
  * @since 1.7
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 public interface FileOptionsProvider
 {
diff --git a/src/main/java/org/apache/commons/configuration2/io/FileSystem.java b/src/main/java/org/apache/commons/configuration2/io/FileSystem.java
index ad4cad9..06ea387 100644
--- a/src/main/java/org/apache/commons/configuration2/io/FileSystem.java
+++ b/src/main/java/org/apache/commons/configuration2/io/FileSystem.java
@@ -28,7 +28,7 @@
  * Abstract layer to allow various types of file systems.
  * @since 1.7
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 public abstract class FileSystem
 {
diff --git a/src/main/java/org/apache/commons/configuration2/io/VFSFileSystem.java b/src/main/java/org/apache/commons/configuration2/io/VFSFileSystem.java
index a2e760d..e11872f 100644
--- a/src/main/java/org/apache/commons/configuration2/io/VFSFileSystem.java
+++ b/src/main/java/org/apache/commons/configuration2/io/VFSFileSystem.java
@@ -46,7 +46,7 @@
  * FileSystem that uses Commons VFS
  * @since 1.7
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
+ * href="https://commons.apache.org/configuration/team-list.html">Commons Configuration team</a>
  */
 public class VFSFileSystem extends DefaultFileSystem
 {
diff --git a/src/main/java/org/apache/commons/configuration2/reloading/VFSFileHandlerReloadingDetector.java b/src/main/java/org/apache/commons/configuration2/reloading/VFSFileHandlerReloadingDetector.java
index 7e24672..8ea2fc9 100644
--- a/src/main/java/org/apache/commons/configuration2/reloading/VFSFileHandlerReloadingDetector.java
+++ b/src/main/java/org/apache/commons/configuration2/reloading/VFSFileHandlerReloadingDetector.java
@@ -30,7 +30,7 @@
 /**
  * <p>
  * A file-based reloading strategy that uses <a
- * href="http://commons.apache.org/vfs/">Commons VFS</a> to determine when a
+ * href="https://commons.apache.org/vfs/">Commons VFS</a> to determine when a
  * file was changed.
  * </p>
  * <p>
@@ -43,7 +43,7 @@
  * </p>
  *
  * @author <a
- *         href="http://commons.apache.org/configuration/team-list.html">Commons
+ *         href="https://commons.apache.org/configuration/team-list.html">Commons
  *         Configuration team</a>
  * @since 1.7
  */
diff --git a/src/main/java/org/apache/commons/configuration2/resolver/CatalogResolver.java b/src/main/java/org/apache/commons/configuration2/resolver/CatalogResolver.java
index 7e5b85d..bbb072c 100644
--- a/src/main/java/org/apache/commons/configuration2/resolver/CatalogResolver.java
+++ b/src/main/java/org/apache/commons/configuration2/resolver/CatalogResolver.java
@@ -39,7 +39,7 @@
  * Thin wrapper around xml commons CatalogResolver to allow list of catalogs
  * to be provided.
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  * @since 1.7
  */
diff --git a/src/main/java/org/apache/commons/configuration2/resolver/DefaultEntityResolver.java b/src/main/java/org/apache/commons/configuration2/resolver/DefaultEntityResolver.java
index 56780e1..8a18089 100644
--- a/src/main/java/org/apache/commons/configuration2/resolver/DefaultEntityResolver.java
+++ b/src/main/java/org/apache/commons/configuration2/resolver/DefaultEntityResolver.java
@@ -30,7 +30,7 @@
 /**
  * The DefaultEntityResolver used by XML Configurations.
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  * @since 1.7
  */
diff --git a/src/main/java/org/apache/commons/configuration2/resolver/EntityRegistry.java b/src/main/java/org/apache/commons/configuration2/resolver/EntityRegistry.java
index 04bb64c..773436d 100644
--- a/src/main/java/org/apache/commons/configuration2/resolver/EntityRegistry.java
+++ b/src/main/java/org/apache/commons/configuration2/resolver/EntityRegistry.java
@@ -22,7 +22,7 @@
 /**
  * Interface used for registering and retrieving PUBLICID to URL mappings.
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  * @since 1.7
  */
diff --git a/src/main/java/org/apache/commons/configuration2/resolver/EntityResolverSupport.java b/src/main/java/org/apache/commons/configuration2/resolver/EntityResolverSupport.java
index b4e60e0..587308a 100644
--- a/src/main/java/org/apache/commons/configuration2/resolver/EntityResolverSupport.java
+++ b/src/main/java/org/apache/commons/configuration2/resolver/EntityResolverSupport.java
@@ -20,7 +20,7 @@
 
 /**
  * Interface that identifies the class as using an EntityResolver
- * @author <a href="http://commons.apache.org/configuration/team-list.html">Commons
+ * @author <a href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  * @since 1.7
  */
diff --git a/src/main/java/org/apache/commons/configuration2/tree/DefaultConfigurationKey.java b/src/main/java/org/apache/commons/configuration2/tree/DefaultConfigurationKey.java
index d12e9a0..d063430 100644
--- a/src/main/java/org/apache/commons/configuration2/tree/DefaultConfigurationKey.java
+++ b/src/main/java/org/apache/commons/configuration2/tree/DefaultConfigurationKey.java
@@ -47,7 +47,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class DefaultConfigurationKey
diff --git a/src/main/java/org/apache/commons/configuration2/tree/DefaultExpressionEngine.java b/src/main/java/org/apache/commons/configuration2/tree/DefaultExpressionEngine.java
index 89c2a4b..6ac57b5 100644
--- a/src/main/java/org/apache/commons/configuration2/tree/DefaultExpressionEngine.java
+++ b/src/main/java/org/apache/commons/configuration2/tree/DefaultExpressionEngine.java
@@ -109,7 +109,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class DefaultExpressionEngine implements ExpressionEngine
diff --git a/src/main/java/org/apache/commons/configuration2/tree/xpath/XPathExpressionEngine.java b/src/main/java/org/apache/commons/configuration2/tree/xpath/XPathExpressionEngine.java
index a3e8c91..37f9403 100644
--- a/src/main/java/org/apache/commons/configuration2/tree/xpath/XPathExpressionEngine.java
+++ b/src/main/java/org/apache/commons/configuration2/tree/xpath/XPathExpressionEngine.java
@@ -36,7 +36,7 @@
  * is able to evaluate XPATH expressions.
  * </p>
  * <p>
- * This class makes use of <a href="http://commons.apache.org/jxpath/"> Commons
+ * This class makes use of <a href="https://commons.apache.org/jxpath/"> Commons
  * JXPath</a> for handling XPath expressions and mapping them to the nodes of a
  * hierarchical configuration. This makes the rich and powerful XPATH syntax
  * available for accessing properties from a configuration object.
diff --git a/src/main/java/org/apache/commons/configuration2/web/BaseWebConfiguration.java b/src/main/java/org/apache/commons/configuration2/web/BaseWebConfiguration.java
index c44b46b..f5805cc 100644
--- a/src/main/java/org/apache/commons/configuration2/web/BaseWebConfiguration.java
+++ b/src/main/java/org/apache/commons/configuration2/web/BaseWebConfiguration.java
@@ -31,7 +31,7 @@
  * </p>
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  * @since 1.2
  */
diff --git a/src/site/site.xml b/src/site/site.xml
index 229e2cf..9d7dc13 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -28,7 +28,7 @@
   <body>
     <menu name="Configuration">
       <item name="Overview"                             href="/index.html"/>
-      <item name="Download"                             href="http://commons.apache.org/configuration/download_configuration.cgi"/>
+      <item name="Download"                             href="https://commons.apache.org/configuration/download_configuration.cgi"/>
       <item name="Issue Tracking"                       href="issue-tracking.html"/>
     </menu>
 
@@ -43,7 +43,7 @@
       </item>
       <item name="1.10" collapse="true"                 href="/index.html">
         <item name="User's Guide"                       href="/userguide_v1.10/user_guide.html"/>
-        <item name="Javadoc"                            href="http://commons.apache.org/configuration/javadocs/v1.10/apidocs/index.html"/>
+        <item name="Javadoc"                            href="https://commons.apache.org/configuration/javadocs/v1.10/apidocs/index.html"/>
         <item name="Runtime Dependencies"               href="/dependencies_1_10.html"/>
       </item>
     </menu>
diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml
index 1e4287d..69c3ce4 100644
--- a/src/site/xdoc/index.xml
+++ b/src/site/xdoc/index.xml
@@ -99,7 +99,7 @@
     </p>
     <p>
       Both Commons Configuration 1.10 and the most recent 2.x release can be downloaded from the
-      <a href="http://commons.apache.org/configuration/download_configuration.cgi">Apache download area</a>.
+      <a href="https://commons.apache.org/configuration/download_configuration.cgi">Apache download area</a>.
       The artifacts have also been deployed to
       <a href="http://repo1.maven.org/maven2/">Maven central</a> (with different coordinates for
       both versions to avoid conflicts). Which version should you use? Well, if you are a
@@ -117,7 +117,7 @@
         added to <a href="http://jakarta.apache.org/turbine">Jakarta Turbine</a>. After Jakarta
         Turbine, this configuration interface moved to <a href="http://jakarta.apache.org/velocity">Jakarta Velocity</a>
         and underwent various improvements.  After Velocity, this code was introduced to the
-        <a href="http://commons.apache.org">Apache Commons</a> as <code>ExtendedProperties</code>.
+        <a href="https://commons.apache.org">Apache Commons</a> as <code>ExtendedProperties</code>.
         Configuration began life in the Commons as a Sandbox component, and was promoted to the
         Commons Proper in late 2003.
       </p>
diff --git a/src/site/xdoc/mail-lists.xml b/src/site/xdoc/mail-lists.xml
index 8c68ae0..9582c77 100644
--- a/src/site/xdoc/mail-lists.xml
+++ b/src/site/xdoc/mail-lists.xml
@@ -49,7 +49,7 @@
     <section name="Overview">
       <p>
         <a href="index.html">Apache Commons Configuration</a> shares mailing lists with all the other
-        <a href="http://commons.apache.org/components.html">Commons Components</a>.
+        <a href="https://commons.apache.org/components.html">Commons Components</a>.
         To make it easier for people to only read messages related to components they are interested in,
         the convention in Commons is to prefix the subject line of messages with the component's name,
         for example:
diff --git a/src/site/xdoc/userguide/howto_basicfeatures.xml b/src/site/xdoc/userguide/howto_basicfeatures.xml
index f407a63..e260891 100644
--- a/src/site/xdoc/userguide/howto_basicfeatures.xml
+++ b/src/site/xdoc/userguide/howto_basicfeatures.xml
@@ -361,7 +361,7 @@
     <subsection name="Using Expressions">
       <p>
         In addition to the simple lookup mechanisms previously described, Commons Configuration
-        provides <code>ExprLookup</code> which uses <a href="http://commons.apache.org/jexl">Apache
+        provides <code>ExprLookup</code> which uses <a href="https://commons.apache.org/jexl">Apache
         Commons Jexl</a> to allow expressions to be resolved wherever a StrLookup is allowed. This
         example shows an alternate way of obtaining a system property if the ExprLookup is
         configured.
@@ -545,7 +545,7 @@
       control over the whole data conversion process. By implementing the
       different conversion methods, it is possible to integrate existing
       conversion libraries (e.g. the converters offered by
-      <a href="http://commons.apache.org/proper/commons-beanutils/">Commons
+      <a href="https://commons.apache.org/proper/commons-beanutils/">Commons
       BeanUtils</a>) with <em>Commons Configuration</em>.
     </p>
     <p>
diff --git a/src/site/xdoc/userguide/howto_filebased.xml b/src/site/xdoc/userguide/howto_filebased.xml
index 33da57e..e7ad160 100644
--- a/src/site/xdoc/userguide/howto_filebased.xml
+++ b/src/site/xdoc/userguide/howto_filebased.xml
@@ -430,7 +430,7 @@
       </p>
       <p>
         <em>Commons Configuration</em> also provides a second <code>FileSystem</code> implementation which allows retrieval using
-        <a href="http://commons.apache.org/vfs">Apache Commons VFS</a>. As of this writing
+        <a href="https://commons.apache.org/vfs">Apache Commons VFS</a>. As of this writing
         Commons VFS supports 18 protocols for manipulating files.
       </p>
       <p>
diff --git a/src/site/xdoc/userguide/howto_hierarchical.xml b/src/site/xdoc/userguide/howto_hierarchical.xml
index 70a038a..589b642 100644
--- a/src/site/xdoc/userguide/howto_hierarchical.xml
+++ b/src/site/xdoc/userguide/howto_hierarchical.xml
@@ -1131,7 +1131,7 @@
             </p>
             <p>
                 <em>Note:</em> XPATH support is implemented through
-                <a href="http://commons.apache.org/jxpath">Commons JXPath</a>.
+                <a href="https://commons.apache.org/jxpath">Commons JXPath</a>.
                 So when making use of this feature, be sure you include the
                 commons-jxpath jar in your classpath.
             </p>
diff --git a/src/site/xdoc/userguide/howto_xml.xml b/src/site/xdoc/userguide/howto_xml.xml
index 7437d6d..f39d269 100644
--- a/src/site/xdoc/userguide/howto_xml.xml
+++ b/src/site/xdoc/userguide/howto_xml.xml
@@ -172,9 +172,9 @@
         </p>
          <source><![CDATA[
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<Employees xmlns="http://commons.apache.org/employee"
+<Employees xmlns="https://commons.apache.org/employee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:schemaLocation="http://commons.apache.org/employee http://commons.apache.org/sample.xsd">
+           xsi:schemaLocation="https://commons.apache.org/employee https://commons.apache.org/sample.xsd">
   <Employee>
     <SSN>555121211</SSN>
     <Name>John Doe</Name>
@@ -185,10 +185,10 @@
 </Employees>]]></source>
         <p>
             The XML sample above is an XML document using a default namespace of
-            http://commons.apache.org/employee. The schemaLocation allows a set
+            https://commons.apache.org/employee. The schemaLocation allows a set
             of namespaces and hints to the location of their corresponding
             schemas. When processing the document the parser will pass the hint,
-            in this case http://commons.apache.org/sample.xsd, to the entity resolver
+            in this case https://commons.apache.org/sample.xsd, to the entity resolver
             as the system id. More information on using schema locations can be found
             at <a href="http://www.w3.org/TR/xmlschema-0/#schemaLocation">schemaLocation</a>.
         </p>
diff --git a/src/site/xdoc/userguide_v1.10/howto_basicfeatures.xml b/src/site/xdoc/userguide_v1.10/howto_basicfeatures.xml
index b1753a0..1248d10 100644
--- a/src/site/xdoc/userguide_v1.10/howto_basicfeatures.xml
+++ b/src/site/xdoc/userguide_v1.10/howto_basicfeatures.xml
@@ -222,7 +222,7 @@
       explains some approaches how you can add your own interpolation facilities.
       Under the hood interpolation is implemented using the
       <code>StrSubstitutor</code> class of the <code>text</code> package of
-      <a href="http://commons.apache.org/lang/">Commons Lang</a>. This
+      <a href="https://commons.apache.org/lang/">Commons Lang</a>. This
       class uses objects derived from the <code>StrLookup</code> class for
       resolving variables. <code>StrLookup</code> defines a simple
       <code>lookup()</code> method that must be implemented by custom
@@ -285,7 +285,7 @@
     <subsection name="Using Expressions">
       <p>
         In addition to the simple lookup mechanisms previously described, Commond Configuration
-        provides <code>ExprLookup</code> which uses <a href="http://commons.apache.org/jexl">Apache
+        provides <code>ExprLookup</code> which uses <a href="https://commons.apache.org/jexl">Apache
         Commons Jexl</a> to allow expressions to be resolved wherever a StrLookup is allowed. This
         example shows an alternate way of obtaining a system property if the ExprLookup is
         configured.
diff --git a/src/site/xdoc/userguide_v1.10/howto_filesystems.xml b/src/site/xdoc/userguide_v1.10/howto_filesystems.xml
index 5f40bdd..7d926e6 100644
--- a/src/site/xdoc/userguide_v1.10/howto_filesystems.xml
+++ b/src/site/xdoc/userguide_v1.10/howto_filesystems.xml
@@ -34,7 +34,7 @@
       </p>
       <p>
         Commons Configuration also provides a second FileSystem which allows retrieval using
-        <a href="http://commons.apache.org/vfs">Apache Commons VFS</a>. As of this writing
+        <a href="https://commons.apache.org/vfs">Apache Commons VFS</a>. As of this writing
         Commons VFS supports 18 protocols for manipulating files.
       </p>
       <subsection name="Configuration">
diff --git a/src/site/xdoc/userguide_v1.10/howto_xml.xml b/src/site/xdoc/userguide_v1.10/howto_xml.xml
index e739943..893ae0c 100644
--- a/src/site/xdoc/userguide_v1.10/howto_xml.xml
+++ b/src/site/xdoc/userguide_v1.10/howto_xml.xml
@@ -964,7 +964,7 @@
             </p>
             <p>
                 <em>Note:</em> XPATH support is implemented through
-                <a href="http://commons.apache.org/jxpath">Commons JXPath</a>.
+                <a href="https://commons.apache.org/jxpath">Commons JXPath</a>.
                 So when making use of this feature, be sure you include the
                 commons-jxpath jar in your classpath.
             </p>
@@ -1096,9 +1096,9 @@
         </p>
          <source><![CDATA[
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<Employees xmlns="http://commons.apache.org/employee"
+<Employees xmlns="https://commons.apache.org/employee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:schemaLocation="http://commons.apache.org/employee http://commons.apache.org/sample.xsd">
+           xsi:schemaLocation="https://commons.apache.org/employee https://commons.apache.org/sample.xsd">
   <Employee>
     <SSN>555121211</SSN>
     <Name>John Doe</Name>
@@ -1109,10 +1109,10 @@
 </Employees>]]></source>
         <p>
             The XML sample above is an XML document using a default namespace of
-            http://commons.apache.org/employee. The schemaLocation allows a set
+            https://commons.apache.org/employee. The schemaLocation allows a set
             of namespaces and hints to the location of their corresponding
             schemas. When processing the document the parser will pass the hint,
-            in this case http://commons.apache.org/sample.xsd, to the entity resolver
+            in this case https://commons.apache.org/sample.xsd, to the entity resolver
             as the system id. More information on using schema locations can be found
             at <a href="http://www.w3.org/TR/xmlschema-0/#schemaLocation">schemaLocation</a>.
         </p>
diff --git a/src/test/java/org/apache/commons/configuration2/InterpolationTestHelper.java b/src/test/java/org/apache/commons/configuration2/InterpolationTestHelper.java
index 240d8e5..a13f469 100644
--- a/src/test/java/org/apache/commons/configuration2/InterpolationTestHelper.java
+++ b/src/test/java/org/apache/commons/configuration2/InterpolationTestHelper.java
@@ -37,7 +37,7 @@
  * configuration implementations.
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class InterpolationTestHelper
diff --git a/src/test/java/org/apache/commons/configuration2/MockInitialContextFactory.java b/src/test/java/org/apache/commons/configuration2/MockInitialContextFactory.java
index ef4fd72..2498d94 100644
--- a/src/test/java/org/apache/commons/configuration2/MockInitialContextFactory.java
+++ b/src/test/java/org/apache/commons/configuration2/MockInitialContextFactory.java
@@ -33,7 +33,7 @@
  * This implementation will return a mock context that contains some test data.
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class MockInitialContextFactory implements InitialContextFactory
diff --git a/src/test/java/org/apache/commons/configuration2/TestEnvironmentConfiguration.java b/src/test/java/org/apache/commons/configuration2/TestEnvironmentConfiguration.java
index b6f30ef..5f8b599 100644
--- a/src/test/java/org/apache/commons/configuration2/TestEnvironmentConfiguration.java
+++ b/src/test/java/org/apache/commons/configuration2/TestEnvironmentConfiguration.java
@@ -30,7 +30,7 @@
  * Test class for EnvironmentConfiguration.
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestEnvironmentConfiguration
diff --git a/src/test/java/org/apache/commons/configuration2/TestPropertiesConfigurationLayout.java b/src/test/java/org/apache/commons/configuration2/TestPropertiesConfigurationLayout.java
index 175d2e0..bb4ef0b 100644
--- a/src/test/java/org/apache/commons/configuration2/TestPropertiesConfigurationLayout.java
+++ b/src/test/java/org/apache/commons/configuration2/TestPropertiesConfigurationLayout.java
@@ -40,7 +40,7 @@
  * Test class for PropertiesConfigurationLayout.
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestPropertiesConfigurationLayout
diff --git a/src/test/java/org/apache/commons/configuration2/beanutils/TestBeanHelper.java b/src/test/java/org/apache/commons/configuration2/beanutils/TestBeanHelper.java
index 4c2bdb1..349d95f 100644
--- a/src/test/java/org/apache/commons/configuration2/beanutils/TestBeanHelper.java
+++ b/src/test/java/org/apache/commons/configuration2/beanutils/TestBeanHelper.java
@@ -40,7 +40,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestBeanHelper
diff --git a/src/test/java/org/apache/commons/configuration2/beanutils/TestConfigurationDynaBeanXMLConfig.java b/src/test/java/org/apache/commons/configuration2/beanutils/TestConfigurationDynaBeanXMLConfig.java
index 5d41561..2ff8779 100644
--- a/src/test/java/org/apache/commons/configuration2/beanutils/TestConfigurationDynaBeanXMLConfig.java
+++ b/src/test/java/org/apache/commons/configuration2/beanutils/TestConfigurationDynaBeanXMLConfig.java
@@ -25,7 +25,7 @@
  * underlying configuration object.
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestConfigurationDynaBeanXMLConfig extends
diff --git a/src/test/java/org/apache/commons/configuration2/beanutils/TestDefaultBeanFactory.java b/src/test/java/org/apache/commons/configuration2/beanutils/TestDefaultBeanFactory.java
index f2289d6..e472563 100644
--- a/src/test/java/org/apache/commons/configuration2/beanutils/TestDefaultBeanFactory.java
+++ b/src/test/java/org/apache/commons/configuration2/beanutils/TestDefaultBeanFactory.java
@@ -43,7 +43,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestDefaultBeanFactory
diff --git a/src/test/java/org/apache/commons/configuration2/beanutils/TestXMLBeanDeclaration.java b/src/test/java/org/apache/commons/configuration2/beanutils/TestXMLBeanDeclaration.java
index 6dddad0..f9d613d 100644
--- a/src/test/java/org/apache/commons/configuration2/beanutils/TestXMLBeanDeclaration.java
+++ b/src/test/java/org/apache/commons/configuration2/beanutils/TestXMLBeanDeclaration.java
@@ -36,7 +36,7 @@
  *
  * @since 1.3
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestXMLBeanDeclaration
diff --git a/src/test/java/org/apache/commons/configuration2/interpol/TestEnvironmentLookup.java b/src/test/java/org/apache/commons/configuration2/interpol/TestEnvironmentLookup.java
index 203c2a0..7cdda23 100644
--- a/src/test/java/org/apache/commons/configuration2/interpol/TestEnvironmentLookup.java
+++ b/src/test/java/org/apache/commons/configuration2/interpol/TestEnvironmentLookup.java
@@ -28,7 +28,7 @@
  * Test class for EnvironmentLookup.
  *
  * @author <a
- *         href="http://commons.apache.org/configuration/team-list.html">Commons
+ *         href="https://commons.apache.org/configuration/team-list.html">Commons
  *         Configuration team</a>
  */
 public class TestEnvironmentLookup
diff --git a/src/test/java/org/apache/commons/configuration2/io/TestFileHandler.java b/src/test/java/org/apache/commons/configuration2/io/TestFileHandler.java
index a9a58f4..27c2257 100644
--- a/src/test/java/org/apache/commons/configuration2/io/TestFileHandler.java
+++ b/src/test/java/org/apache/commons/configuration2/io/TestFileHandler.java
@@ -256,9 +256,9 @@
     {
         final FileHandler handler = new FileHandler();
         handler.setURL(new URL(
-                "http://commons.apache.org/configuration/index.html"));
+                "https://commons.apache.org/configuration/index.html"));
 
-        assertEquals("base path", "http://commons.apache.org/configuration/",
+        assertEquals("base path", "https://commons.apache.org/configuration/",
                 handler.getBasePath());
         assertEquals("file name", "index.html", handler.getFileName());
         assertNull("Got a file name in locator", handler.getFileLocator()
diff --git a/src/test/java/org/apache/commons/configuration2/tree/TestDefaultExpressionEngine.java b/src/test/java/org/apache/commons/configuration2/tree/TestDefaultExpressionEngine.java
index 86695cf..4806856 100644
--- a/src/test/java/org/apache/commons/configuration2/tree/TestDefaultExpressionEngine.java
+++ b/src/test/java/org/apache/commons/configuration2/tree/TestDefaultExpressionEngine.java
@@ -33,7 +33,7 @@
  * Test class for DefaultExpressionEngine.
  *
  * @author <a
- * href="http://commons.apache.org/configuration/team-list.html">Commons
+ * href="https://commons.apache.org/configuration/team-list.html">Commons
  * Configuration team</a>
  */
 public class TestDefaultExpressionEngine
diff --git a/src/test/resources/catalog.xml b/src/test/resources/catalog.xml
index 4d695c9..d2f558c 100644
--- a/src/test/resources/catalog.xml
+++ b/src/test/resources/catalog.xml
@@ -21,5 +21,5 @@
           uri="resolver.dtd"/>
   <rewriteSystem systemIdStartString="http://java.sun.com/dtd/"
                  rewritePrefix="./"/>
-  <rewriteSystem systemIdStartString="http://commons.apache.org/" rewritePrefix="./"/>
+  <rewriteSystem systemIdStartString="https://commons.apache.org/" rewritePrefix="./"/>
 </catalog>
\ No newline at end of file
diff --git a/src/test/resources/catalog2.xml b/src/test/resources/catalog2.xml
index a7d6de5..cf611e9 100644
--- a/src/test/resources/catalog2.xml
+++ b/src/test/resources/catalog2.xml
@@ -21,6 +21,6 @@
           uri="resolver.dtd"/>
   <rewriteSystem systemIdStartString="http://java.sun.com/dtd/"
                  rewritePrefix="./"/>
-  <rewriteSystem systemIdStartString="http://commons.apache.org/"
+  <rewriteSystem systemIdStartString="https://commons.apache.org/"
                  rewritePrefix="file://${sys:user.dir}/target/test-classes/"/>
 </catalog>
\ No newline at end of file
diff --git a/src/test/resources/sample.xml b/src/test/resources/sample.xml
index fc5b61c..f4f62c1 100644
--- a/src/test/resources/sample.xml
+++ b/src/test/resources/sample.xml
@@ -15,9 +15,9 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
-<Employees xmlns="http://commons.apache.org/employee"
+<Employees xmlns="https://commons.apache.org/employee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:schemaLocation="http://commons.apache.org/employee http://commons.apache.org/sample.xsd">
+           xsi:schemaLocation="https://commons.apache.org/employee https://commons.apache.org/sample.xsd">
   <Employee>
     <SSN>555121211</SSN>
     <Name>John Doe</Name>
diff --git a/src/test/resources/sample.xsd b/src/test/resources/sample.xsd
index aeda543..3721fc5 100644
--- a/src/test/resources/sample.xsd
+++ b/src/test/resources/sample.xsd
@@ -16,9 +16,9 @@
    limitations under the License.
 -->
 <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
-           targetNamespace="http://commons.apache.org/employee"
+           targetNamespace="https://commons.apache.org/employee"
            xmlns:xs="http://www.w3.org/2001/XMLSchema">
-  <xs:element name="Employees" xmlns="http://commons.apache.org/employee">
+  <xs:element name="Employees" xmlns="https://commons.apache.org/employee">
     <xs:complexType>
       <xs:sequence>
         <xs:element name="Employee">
diff --git a/src/test/resources/sample_1001.xml b/src/test/resources/sample_1001.xml
index a0df635..c194508 100644
--- a/src/test/resources/sample_1001.xml
+++ b/src/test/resources/sample_1001.xml
@@ -15,9 +15,9 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 -->
-<Employees xmlns="http://commons.apache.org/employee"
+<Employees xmlns="https://commons.apache.org/employee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:schemaLocation="http://commons.apache.org/employee http://commons.apache.org/sample.xsd">
+           xsi:schemaLocation="https://commons.apache.org/employee https://commons.apache.org/sample.xsd">
   <Employee>
     <Name>Jane Doe</Name>
   </Employee>
diff --git a/src/test/resources/testMultiConfiguration_2001.xml b/src/test/resources/testMultiConfiguration_2001.xml
index a1173f3..f9d4f4f 100644
--- a/src/test/resources/testMultiConfiguration_2001.xml
+++ b/src/test/resources/testMultiConfiguration_2001.xml
@@ -17,7 +17,7 @@
 -->
 <configuration
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <undefined>This will throw a schema exception</undefined>
   </colors>
diff --git a/src/test/resources/testMultiConfiguration_2002.xml b/src/test/resources/testMultiConfiguration_2002.xml
index 4c52d04..e493d1a 100644
--- a/src/test/resources/testMultiConfiguration_2002.xml
+++ b/src/test/resources/testMultiConfiguration_2002.xml
@@ -17,7 +17,7 @@
 -->
 <configuration
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <background>#2222222</background>
     <text>#000000</text>
diff --git a/src/test/resources/testMultiConfiguration_3001.xml b/src/test/resources/testMultiConfiguration_3001.xml
index 44e665c..4b7fba0 100644
--- a/src/test/resources/testMultiConfiguration_3001.xml
+++ b/src/test/resources/testMultiConfiguration_3001.xml
@@ -16,7 +16,7 @@
    limitations under the License.
 -->
 <configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <background>#808080</background>
     <text>#000000</text>
diff --git a/src/test/resources/testMultiConfiguration_3002.xml b/src/test/resources/testMultiConfiguration_3002.xml
index 3fe8d97..0c4c436 100644
--- a/src/test/resources/testMultiConfiguration_3002.xml
+++ b/src/test/resources/testMultiConfiguration_3002.xml
@@ -16,7 +16,7 @@
    limitations under the License.
 -->
 <configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <background>#2222222</background>
     <text>#000000</text>
diff --git a/src/test/resources/testMultiConfiguration_default.xml b/src/test/resources/testMultiConfiguration_default.xml
index cc23f25..04a5b42 100644
--- a/src/test/resources/testMultiConfiguration_default.xml
+++ b/src/test/resources/testMultiConfiguration_default.xml
@@ -16,7 +16,7 @@
    limitations under the License.
 -->
 <configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <background>#40404040</background>
     <text>#000000</text>
diff --git a/src/test/resources/testMultiDynamic_default.xml b/src/test/resources/testMultiDynamic_default.xml
index bc4b6a8..4ca8823 100644
--- a/src/test/resources/testMultiDynamic_default.xml
+++ b/src/test/resources/testMultiDynamic_default.xml
@@ -16,7 +16,7 @@
    limitations under the License.
 -->
 <configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <background>#40404040</background>
     <text>#000000</text>
diff --git a/src/test/resources/testMultiDynamic_default2.xml b/src/test/resources/testMultiDynamic_default2.xml
index 44ff7fc..b116321 100644
--- a/src/test/resources/testMultiDynamic_default2.xml
+++ b/src/test/resources/testMultiDynamic_default2.xml
@@ -16,7 +16,7 @@
    limitations under the License.
 -->
 <configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-           xsi:noNamespaceSchemaLocation="http://commons.apache.org/testMultiConfiguration.xsd">
+           xsi:noNamespaceSchemaLocation="https://commons.apache.org/testMultiConfiguration.xsd">
   <colors>
     <background>#40404040</background>
     <text>#000000</text>
