The "pcfg_openfile: unable to check htaccess file, ensure it is readable" error means Apache cannot read your .htaccess file due to incorrect file permissions, wrong ownership, or file corruption. This error typically causes a 500 Internal Server Error for visitors.
Set .htaccess permissions to 644
In cPanel File Manager, right-click .htaccess > Change Permissions > set to 644. Via SSH: chmod 644 ~/public_html/.htaccess. The file must be readable by the web server.
01. Fix File Permissions
The .htaccess file should always be 644 (owner: read/write, group: read, world: read). If it's set to 600, 640, or 000, Apache can't read it.
Check and fix via SSH:
# Check current permissions
ls -la ~/public_html/.htaccess
# Fix permissions
chmod 644 ~/public_html/.htaccess
Or in cPanel's File Manager: navigate to public_html, right-click .htaccess, select "Change Permissions," and set to 644.
Never set .htaccess to 777 or 666. While this would fix the readability error, it creates a serious security vulnerability by allowing any user on the server to modify your rewrite rules.
02. Fix File Ownership
If permissions are already 644 but the error persists, the file ownership is likely wrong. This happens when files are created by a process running as a different user (like a root-level restore or a misconfigured script).
# Check ownership
ls -la ~/public_html/.htaccess
# Should show: -rw-r--r-- 1 username username
# Fix ownership (replace 'username' with your cPanel username)
chown username:username ~/public_html/.htaccess
If you don't have SSH access, open a support ticket and we'll fix the ownership for you.
03. Corrupted or Empty File
If the .htaccess file is zero bytes, contains garbled characters, or has invalid syntax, Apache may report this error instead of a more specific parse error. Check the file contents:
cat ~/public_html/.htaccess
If it's empty or corrupted, delete it and create a fresh one. For WordPress sites, go to Settings > Permalinks and click "Save Changes" - WordPress regenerates the default .htaccess rules automatically. For non-WordPress sites, you can start with an empty file or a basic rewrite configuration.
For complete .htaccess documentation, see our .htaccess guide.
04. Subdirectory htaccess Files
This error can also be caused by an .htaccess file in a subdirectory, not just the one in public_html. Apache checks .htaccess in every directory along the path to the requested file. If any of them has wrong permissions, the entire request fails.
Check all .htaccess files at once:
find ~/public_html -name ".htaccess" -exec ls -la {} \;
Fix permissions on any that aren't 644:
find ~/public_html -name ".htaccess" -exec chmod 644 {} \;
Still Getting This Error?
If permissions and ownership are both correct, the Apache error log may have more detail. Open a ticket and we'll check the server logs.
Open a Support TicketQuick Recap: htaccess Readable Error
- Set .htaccess to 644 - the most common fix
- Fix ownership to your cPanel username if permissions are already correct
- Delete and regenerate if the file is corrupted or empty
- Check subdirectories - any .htaccess with wrong permissions causes this error
- Never use 777 on .htaccess files
Last updated March 2026 · Browse all htaccess articles
