Skip to content

Instantly share code, notes, and snippets.

@k4mrul
Forked from Adirael/fix-wordpress-permissions.sh
Last active March 11, 2020 07:45
Show Gist options
  • Save k4mrul/d53956bcf66f70a2a080f2ac8c88a8fd to your computer and use it in GitHub Desktop.
Save k4mrul/d53956bcf66f70a2a080f2ac8c88a8fd to your computer and use it in GitHub Desktop.

Revisions

  1. Kamrul Ahsan revised this gist Mar 11, 2020. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions fix-wordpress-permissions.sh
    Original file line number Diff line number Diff line change
    @@ -7,9 +7,9 @@
    #

    WP_OWNER=nobody # <-- wordpress owner (if you use shared host, but if use VPS like me try your user and group instead)
    WP_GROUP=lsadm # <-- wordpress group. Try with nogroup also
    WP_GROUP=nogroup # <-- wordpress group.
    WP_ROOT=$1 # <-- wordpress root directory
    WS_GROUP=lsadm # <-- webserver group. Try with nogroup also
    WS_GROUP=nogroup # <-- webserver group.


    # reset to safe defaults
  2. Kamrul Ahsan revised this gist Mar 11, 2020. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions fix-wordpress-permissions.sh
    Original file line number Diff line number Diff line change
    @@ -7,9 +7,9 @@
    #

    WP_OWNER=nobody # <-- wordpress owner (if you use shared host, but if use VPS like me try your user and group instead)
    WP_GROUP=nogroup # <-- wordpress group
    WP_GROUP=lsadm # <-- wordpress group. Try with nogroup also
    WP_ROOT=$1 # <-- wordpress root directory
    WS_GROUP=nogroup # <-- webserver group
    WS_GROUP=lsadm # <-- webserver group. Try with nogroup also


    # reset to safe defaults
  3. Kamrul Ahsan revised this gist Mar 11, 2020. 1 changed file with 5 additions and 3 deletions.
    8 changes: 5 additions & 3 deletions fix-wordpress-permissions.sh
    Original file line number Diff line number Diff line change
    @@ -5,10 +5,12 @@
    #
    # Author: Michael Conigliaro <mike [at] conigliaro [dot] org>
    #
    WP_OWNER=www-data # <-- wordpress owner
    WP_GROUP=www-data # <-- wordpress group

    WP_OWNER=nobody # <-- wordpress owner (if you use shared host, but if use VPS like me try your user and group instead)
    WP_GROUP=nogroup # <-- wordpress group
    WP_ROOT=$1 # <-- wordpress root directory
    WS_GROUP=www-data # <-- webserver group
    WS_GROUP=nogroup # <-- webserver group


    # reset to safe defaults
    find ${WP_ROOT} -exec chown ${WP_OWNER}:${WP_GROUP} {} \;
  4. @Adirael Adirael created this gist Aug 17, 2012.
    25 changes: 25 additions & 0 deletions fix-wordpress-permissions.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,25 @@
    #!/bin/bash
    #
    # This script configures WordPress file permissions based on recommendations
    # from http://codex.wordpress.org/Hardening_WordPress#File_permissions
    #
    # Author: Michael Conigliaro <mike [at] conigliaro [dot] org>
    #
    WP_OWNER=www-data # <-- wordpress owner
    WP_GROUP=www-data # <-- wordpress group
    WP_ROOT=$1 # <-- wordpress root directory
    WS_GROUP=www-data # <-- webserver group

    # reset to safe defaults
    find ${WP_ROOT} -exec chown ${WP_OWNER}:${WP_GROUP} {} \;
    find ${WP_ROOT} -type d -exec chmod 755 {} \;
    find ${WP_ROOT} -type f -exec chmod 644 {} \;

    # allow wordpress to manage wp-config.php (but prevent world access)
    chgrp ${WS_GROUP} ${WP_ROOT}/wp-config.php
    chmod 660 ${WP_ROOT}/wp-config.php

    # allow wordpress to manage wp-content
    find ${WP_ROOT}/wp-content -exec chgrp ${WS_GROUP} {} \;
    find ${WP_ROOT}/wp-content -type d -exec chmod 775 {} \;
    find ${WP_ROOT}/wp-content -type f -exec chmod 664 {} \;