[fastadmin] 第三十五篇 FastAdmin 403 常见问题
在 FastAdmin 中,这种 403 错误通常有几个可能的原因
- 首先检查
.htaccess
文件是否存在且配置正确。在项目根目录下应该有这个文件,内容应该类似:
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
</IfModule>
- 在
addons
目录下也需要添加.htaccess
文件:
<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php?s=/addons/$1 [QSA,PT,L]
</IfModule>
- 检查 Apache 配置:
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
- 确保 Apache mod_rewrite 模块已启用:
sudo a2enmod rewrite
sudo service apache2 restart
- 检查目录权限设置:
# 设置目录权限
chmod -R 755 /path/to/your/project
chmod -R 777 /path/to/your/project/runtime
chmod -R 777 /path/to/your/project/public/uploads
chmod -R 777 /path/to/your/project/addons
# 设置文件所有者
chown -R www-data:www-data /path/to/your/project
- 检查路由配置,在
application/config.php
中确认:
// URL伪静态后缀
'url_html_suffix' => false,
// URL普通方式参数 用于自动生成
'url_common_param' => true,
- 检查插件是否正确安装和启用:
// 在应用配置中检查插件是否启用
'addon_static' => true,
'addon_path' => ROOT_PATH . 'addons' . DS,
'addon_static_path' => ROOT_PATH . 'public' . DS . 'assets' . DS . 'addons' . DS,
- 可以在
.env
文件中添加调试模式:
APP_DEBUG = true
APP_TRACE = true
- 检查日志文件:
tail -f runtime/log/202x-xx-xx.log
- 如果还是不行,可以尝试在
public/index.php
开头添加错误显示:
error_reporting(E_ALL);
ini_set('display_errors', 1);
- 确认 URL 重写规则是否生效:
// 在任意控制器中
public function test()
{
echo "URL可访问";
}
如果以上方法都试过还不行,可以:
- 检查具体的错误日志:
cat /var/log/apache2/error.log
- 临时测试直接访问 PHP 文件:
https://www.maigeyin.com/addons/third/api.php?action=getAuthUrl&platform=wechat...
- 添加测试文件检查权限:
# 在 addons 目录下创建测试文件
echo "<?php phpinfo(); ?>" > addons/test.php
# 然后访问 https://www.maigeyin.com/addons/test.php
本作品采用《CC 协议》,转载必须注明作者和本文链接