Setup basic auth on wp-admin directory

February 4, 2018 By - Usama Muneer | 194

    If you’re running a WordPress website or blog, its always a good practice to setup some sort of security for your admin area & restrict access for smart users.

    The most basic thing to do is setup a basic auth for your wp-admin directory and wp-login.php so that none can pass through except for the authors or users who are authorised.

    Step # 01 – Create .htpasswds file

    Right in your document root, create an empty .htpasswds file, like so

    <Document-root> touch .htpasswds

    Step # 02 – Generate .htpasswds contents

    Head over to this online tool and generate your .htpasswds contents & paste the output in your .htpasswds from step 1.

    Step # 03 – Create .htaccess file for wp-admin

    Inside of your wp-admin directory, create .htaccess file and paste the following code

    AuthUserFile /path/to/your/root/.htpasswds
    AuthType basic
    AuthName "Restricted Resource"
    require valid-user
    # This is the whitelisting of the ajax handler
       <Files admin-ajax.php>
         Order allow,deny
         Allow from all
         Satisfy any

    That’s it. save the file, head over to the browser and try accessing your wp-admin area, it now should ask for your username & password for authentication.

    blog user
    Usama Muneer

    A web enthusiastic, self-motivated & detail-oriented professional Full-Stack Web Developer from Karachi, Pakistan with experience in developing applications using JavaScript, WordPress & Laravel specifically. Loves to write on different web technologies with an equally useful skill to make some sense out of it.

    Related Posts

    While Developing applications in Laravel, there comes situations where you have date in simple string format. For instance getting raw response from an API. But you want to convert that string into Carbon instance and use the Carbon helpers on it. Well there's a simple solution to it.

    If you have encountered an error not defined while uploading images for your WordPress custom posts or taxonomies.

    Laravel ships in with the awesomeness of Database Migrations which allows you to version control your database. But there are number of events when you are required to change the datatypes or attributes assigned to your table columns inside of your migrations.

    Sometimes you need to provide dropdowns in your exported excel files for more enhanced look on the data. Here's how we can achieve it.