ErrorDocument 404 /404.html无法在APACHE中的.htaccess文件中运行

时间:2017-07-27 14:46:05

标签: html apache .htaccess errordocument

在使用Apache的Linux服务器上运行mydomain.pe,我在ErrorDocument 404 /404.html下的RewriteEngine下添加了以下行.htaccess

但是,在进行虚假网址测试时:默认情况下,abc.mydomain.pe / etc.html会抛出404错误。

我的404.html文件通过网址在网址中显示:abc.mydomain.pe / 404.html

请你的支持,我有时间,但我无法解决这个问题。

那可能会发生吗?我分享了我的.htaccess文件:

<IfModule mod_rewrite.c>
RewriteEngine on
ErrorDocument 404 /404.html

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^(.*)$ $1.html

RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.abc.mydomain.pe/$1 [R,L]

RewriteCond %{HTTP_HOST} !^www.abc.mydomain.pe$ [NC]
RewriteRule ^(.*)$ https://www.abc.mydomain.pe/$1 [L,R=301]

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

RewriteCond %{HTTP_USER_AGENT} libwww-perl.* 
RewriteRule .* ? [F,L]
Options -Indexes
</IfModule>


<IfModule mod_headers.c>
<FilesMatch ".(js|css|xml|gz|html)$">
Header append Vary: Accept-Encoding
</FilesMatch>
</IfModule>

<IfModule mod_deflate.c>
    <filesMatch "\.(js|css|html|php)$">
        SetOutputFilter DEFLATE
    </filesMatch>
</IfModule>

## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType text/html "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 1 month"
ExpiresByType text/javascript "access 1 month"
</IfModule>
## EXPIRES CACHING ##

## INICIO compresión gzip (mod_deflate)
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/shtml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule> 
## FIN compresión gzip (mod_deflate)##

# php -- BEGIN cPanel-generated handler, do not edit
# Configure el paquete “ea-php56” como el lenguaje de programación predeterminado “PHP”.
<IfModule mime_module>
  AddType application/x-httpd-ea-php56 .php .php5 .phtml
</IfModule>
# php -- END cPanel-generated handler, do not edit

2 个答案:

答案 0 :(得分:0)

如果您的域名是mydomain.pe,那么您的错误文档可能位于错误的位置,如您所说 abc.mydomain.pe/404.html

也许您应该将文件404.html复制到 mydomain.pe/404.html ,因为Apache会在那里查找它。它应该可以通过mydomain.pe/404.html访问,而不是通过abc.mydomain.pe/404.html

答案 1 :(得分:0)

我已经能够通过cPanel面板使用“错误页面”修复它,有点好奇,我注意到创建了一个404.shtml文件(“s”),这对我来说是新的,也许是EasyApache 4的工作原理现在也是。

感谢您的阅读, Axel P。