如何防止目录访问并在php中显示禁止的错误

use*_*est 16 php apache

  1. 我是.htaccess的新手,我想知道如何使用.htacces来防止通过我的文件夹的url直接访问,例如localhost/mycart/images/OR localhost/mycart/css应该显示禁止的消息.

  2. 目前我已经将index.php放在我网站的每个文件夹中并回复消息,这是很好的方法.

  3. 当我访问我的网站,如www.mycart/index.php/css或www.mycart/index.php/images它显示网站没有图像和CSS为什么以及如何解决它?

Asi*_*sif 35

我用过

# disable directory browsing
Options -Indexes
Run Code Online (Sandbox Code Playgroud)

相反,要启用目录浏览,请使用以下指令:

# enable directory browsing
Options +Indexes
Run Code Online (Sandbox Code Playgroud)

同样,此规则将阻止服务器列出目录内容:

# prevent folder listing
IndexIgnore *
Run Code Online (Sandbox Code Playgroud)

最后,IndexIgnore指令可用于防止显示选择的文件类型:

# prevent display of select file types
IndexIgnore *.wmv *.mp4 *.avi *.etc
Run Code Online (Sandbox Code Playgroud)

礼貌来源: 防止未经授权的目录浏览愚蠢的.htaccess技巧.

它还包含许多其他有用的命令,用于.htaccess增强安全性和性能.


小智 9

您只需将以下内容添加到.htaccess即可

# Don't listing directory
Options -Indexes
ErrorDocument 403 http://www.your-website-home-page.com/
# Follow symbolic links
Options +FollowSymLinks

# Default handler
DirectoryIndex index.php
Run Code Online (Sandbox Code Playgroud)

这将在文件浏览时仅加载index.php文件.如果没有找到index.php文件,则会发生403错误(访问受限),它会将用户发送到主页


Jer*_*oen 8

如果要拒绝访问所有文件:

deny from all
Run Code Online (Sandbox Code Playgroud)

如果要禁用目录列表:

IndexIgnore *
Run Code Online (Sandbox Code Playgroud)