I have been getting a 500 Internal server error instead of 404. I have a 404.shtml and a 503.shtml in my public_html folder and all my subdomains' document root. Here's my htaccess file contents for my apps subdomain:
#Settings
RewriteEngine On
RewriteBase /
#Makes it so that if apps.html doesn't exist, it loads up maintinence.html.
DirectoryIndex appsemulators.html maintinence.html
#Checks if the user agent is an Apple device, then loads up the apps page. Otherwise, it loads up a error page.
RewriteCond %{HTTP_USER_AGENT} !iPhone [NC]
RewriteCond %{HTTP_USER_AGENT} !iPod [NC]
RewriteCond %{HTTP_USER_AGENT} !iPad [NC]
RewriteRule ^appsemulators.html /unsupportedclient.html? [L]
#This makes pages show up without the .html extension.
RewriteCond %{https://apps.superappletech.com} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP
RewriteRule ^([^.]+)\.html$ https://apps.superappletech.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]
And here's the htaccess for my root domain:
#Settings
RewriteEngine On
RewriteBase /
#Makes it so that if index.html doesn't exist, it opens the maintenance page.
DirectoryIndex index.html maintinence.html
#This makes pages show up without the .html extension.
RewriteCond %{https://superappletech.com} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP
RewriteRule ^([^.]+)\.html$ https://superappletech.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]
#Settings
RewriteEngine On
RewriteBase /
#Makes it so that if apps.html doesn't exist, it loads up maintinence.html.
DirectoryIndex appsemulators.html maintinence.html
#Checks if the user agent is an Apple device, then loads up the apps page. Otherwise, it loads up a error page.
RewriteCond %{HTTP_USER_AGENT} !iPhone [NC]
RewriteCond %{HTTP_USER_AGENT} !iPod [NC]
RewriteCond %{HTTP_USER_AGENT} !iPad [NC]
RewriteRule ^appsemulators.html /unsupportedclient.html? [L]
#This makes pages show up without the .html extension.
RewriteCond %{https://apps.superappletech.com} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP
RewriteRule ^([^.]+)\.html$ https://apps.superappletech.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]
And here's the htaccess for my root domain:
#Settings
RewriteEngine On
RewriteBase /
#Makes it so that if index.html doesn't exist, it opens the maintenance page.
DirectoryIndex index.html maintinence.html
#This makes pages show up without the .html extension.
RewriteCond %{https://superappletech.com} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP
RewriteRule ^([^.]+)\.html$ https://superappletech.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/
RewriteRule ^(.*)\.html$ /$1 [R=301,L]