Jika Anda mengalami masalah website tidak dapat diakses setelah melakukan export dan import wordpress manual di control panel seperti Cpanel atau VPS berbasis Linux Server, kemungkinan salah satu penyebabnya adalah pengaturan izin akses folder dan file yang salah.

Ketika Anda upload menggunakan ftp atau sftp, biasanya permission file akan berubah, dari yang seharusnya folder 755 berubah menjadi 770 atau 750. File yang harusnya 644 berubah menjadi 640, dan lain sebagainya.

Ini menyebabkan masalah situs wordpress menjadi tidak dapat diakses, menampilkan pesan error seperti:

  • Halaman login tidak dapat diakses: “You don’t hame permission to access (folder/url) on this server. Server unable to read htaccess file, denying access to be safe. Forbidden 403”
  • Halaman depan tidak bisa diakses: “Sorry, you are not allowed to access this page. Error 404”
  • Internal server error 500
  • Website bisa dibuka, namun terlihat rusak dan berantakan, gambar dan javascript tidak muncul
  • Dan lain sebagainya

Permasalahan folder dan file permission atau ownership ini bisa diketahui dengan membuka file manager dan melihat folder dan file core wordpress. Pastikan permission sesuai dengan tabel di bawah ini:

Nama Folder / FilePermissionCode
Root directory (/public_html)rwxr-xr-x755
wp-admin dan folder didalamnyarwxr-xr-x755
wp-includes dan folder didalamnyarwxr-xr-x755
wp-content dan folder didalamnyarwxr-xr-x755
.htaccessrw-r–r–644
index.phprw-r–r–644
wp-config.phprw-r–-–640
file lainnyarw-r–r–644
folder lainnyarwxr-xr-x755
Struktur Permission WordPress

Jika Anda menemukan permission folder atau file yang tidak sesuai dengan table diatas, maka bisa dipastikan salah satu permasalah website wordpress Anda adalah permission.

Contoh melihat permission di File Manager Cpanel:

cara mengatur permission file dan folder wordpress di cpanel
cara mengubah permission file dan folder wordpress di cpanel

Hal yang Menyebalkan

Hal yang paling menyebalkan ketika memperbaiki permission file dan folder wordpress di file manager bawaan Cpanel yaitu kita tidak bisa melakukannya secara serentak (batch) sekali tekan. Jika kita mengubah permission folder, maka folder dan file didalamnya tidak ikut berubah.

Sedangkan, file core wordpress dan file user jumlahnya sangat banyak, bisa puluhan ribu file. Tentu melelahkan bukan?

Nah, saya menemukan solusi yang sangat brilian dan efektif, cukup dengan tiga langkah masalah ini bisa terselesaikan secara otomatis.

Solusi Menggubah Permission File dan Folder WordPress Secara Serentak dengan Script PHP (Batch)

Ada beberapa cara untuk Memperbaiki Permission WordPress yang salah, kita mulai dulu dari cara manual

1. Secara Manual Lewat Cpanel

Cara ini cukup melelahkan jika permission yang salah hampir semua file. Namun, jika Anda menemukan hanya beberapa folder atau file saja, maka Anda bisa menggunakan cara mudah ini. Yaitu

a. Anda login ke Cpanel

b. Buka File Manager dan Cari Folder dan File yang permissionnya salah (Sesuaikan dengan tabel “Struktur Permission WordPress” di atas.

c. Setelah itu, klik Kanan kemudian pilih Permission

Menggubah permission file di cpanel

d. Ubah sesuai dengan permission yang seharusnya. Untuk Folder 755 dan untuk file 644.

permission folder wordpress

2. Cara Otomatis menggunakan Script Batch “wordpress-permissions-fixer.php”

Saya menemukan script php hebat, terima kasih kepada “Manuel Rodrigues” yang telah menghebat puluhan jam waktu saya. Script ini bisa dengan otomatis memperbaiki dan mengubah permission semua folder dan file secara otomatis. Cara menggunakannya cukup mudah.

  • Pertama, Anda Download wordpress-permissions-fixer.php
  • Lalu upload ke Folder Root / atau di dalam /public_html
  • Kemudian script dengan menggunakan browser. Cukup ketik https://alamatwebanda.com/wordpress-permissions-fixer.php (Contoh di kasus saya https://rishalmedia.com/wordpress-permissions-fixer.php)
  • Tara, semua file dan folder sudah berhasil diperbaiki

Anda juga bisa secara manual mencopy script berikut ini ke notepad, lalu save as .php

<?php
/*
**  Plugin Name:  WordPress Permissions Fixer
**  Plugin URI:   https://endurtech.com/how-to-fix-wordpress-file-and-folder-permissions/
**  Description:  Simple php script sets correct directory and file permissions on WordPress and others. Directories are 755, files are 644, wp-config.php is 444.
**  Author:       Manuel Rodrigues
**  Author URI:   https://endurtech.com
**  Version:      1.1
**  Tags:         wordpress, php, script, directory, directories, file, files, wp-config.php, chmod, fix
**  License:      GPL-2.0+
*/

file_fix_directory( dirname(__FILE__) );

function file_fix_directory( $dir, $nomask = array( '.', '..' ) )
{
  if ( is_dir( $dir ) )
  {
    // Reset directories
    if ( @chmod( $dir, 0755 ) )
    {
      echo "<p>Fixed: " . $dir . "</p>";
    }
  }
  if ( is_dir( $dir ) && $handle = opendir( $dir ) )
  {
    while ( false !== ( $file = readdir ( $handle ) ) )
    {
      if ( !in_array( $file, $nomask ) && $file[0] != '.' )
      {
        if ( is_dir( "$dir/$file" ) )
        {
          // Recurse into subdirectories
          file_fix_directory( "$dir/$file", $nomask );
        }
        else
        {
          $filename = "$dir/$file";
          // Reset files
          if ( @chmod( $filename, 0644 ) )
          {
            echo "<p>Fixed: " . $filename . "</p>";
          }
        }
      }
    }
    closedir( $handle );
  }
}

unlink(__FILE__);

echo "<p>&nbsp;</p>
<p>Your Directory and File Permissions have been Reset.<br />Please close this window and remove the <span style=\"background-color:#cccccc;\">permissions-fix.php</span> file from your webserver.</p>";

?>

3. Cek file .htaccess di folder root / atau /public_html

Selain dari permasalahan permission, error bisa juga terjadi dari file .htaccess yang rusak atau hilang. Anda bisa download kembali default file .htaccess wordpress ini kemudian upload ke folder root website Anda.

Akhir Kata

Itulah cara memperbaiki wordpress yang error setelah migrasi yang disebabkan oleh masalah file dan folder permission. Jika Semoga artikel ini bermanfaat bagi Anda.