我想将 Ubuntu 上的 Apache Web 服务器的 404 页面自定义为其他内容:
Not Found
The requested URL /***** was not found on this server.
______________________________________________________
Apache/*.*.** (Ubuntu) Server at **** Port 80
如何实现这一点?
答案1
我自己找到了答案。
您必须编辑文件 /etc/apache2/conf.d/localized-error-pages
sudoedit /etc/apache2/conf.d/localized-error-pages
您可以输入纯文本或链接到脚本或 html
答案2
<VirtualHost 192.168.0.1:80>
ServerAdmin [email protected]
ServerName host.ru
ServerAlias www.host.ru
DocumentRoot /home/WebServer/www/host.ru/public_html/
ErrorLog /home/WebServer/www/host.ru/logs/error.log
CustomLog /home/WebServer/www/hostu/logs/access.log combined
Alias /error_html/ "/home/WebServer/www/host/error_html/"
<Directory "/home/WebServer/www/host.ru/error_html">
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html
AddHandler type-map var
Order allow,deny
Allow from all
LanguagePriority en cs de es fr it nl sv pt-br ro
ForceLanguagePriority Prefer Fallback
</Directory>
ErrorDocument 404 /error_html/HTTP_NOT_FOUND.html
</VirtualHost>
答案3
答案4
据我所知,您无法以任何简单的方式自定义 Apache 2.4 的默认错误消息,因为这些消息位于apache2
可执行文件内部。
但是,您可以使用“ErrorDocument”指令覆盖它们,该指令也可以在中使用apache2.conf
。
更好的方法是使用Include
并apache2.conf
在一个单独的文件中收集被覆盖的消息。
另请参阅Apache 2.4 文档。