在我的.htaccess中,我执行以下操作
然后php脚本将用户带到相关页面/显示相关文本
ErrorDocument 400 /error.php?e=400
ErrorDocument 401 /error.php?e=401
ErrorDocument 403 /error.php?e=403
ErrorDocument 404 /error.php?e=404
ErrorDocument 500 /error.php?e=500
ErrorDocument 503 /error.php?e=503
对于我尝试发送自动电子邮件的一些错误。
1)如果不是来自apache,我怎么能阻止直接访问该页面,例如只有键入error.php?e=503
的人
2)如何获取访问过的最后一个网址(触发错误的网址?
由于
答案 0 :(得分:2)
(1)通过httpd.conf
启用mod_rewrite和.htaccess,然后将此代码放在.htaccess
目录下的DOCUMENT_ROOT
中:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
ErrorDocument 400 /error.php?e=400
ErrorDocument 401 /error.php?e=401
ErrorDocument 403 /error.php?e=403
ErrorDocument 404 /error.php?e=404
ErrorDocument 500 /error.php?e=500
ErrorDocument 503 /error.php?e=503
# block direct access to /error.php
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+error\.php[\s?] [NC]
RewriteRule ^ - [F]
(2)使用以下内容/error.php
访问原始URI
$_SERVER["REQUEST_URI"];