所以我们有一个 nginx 和 drupal 站点,文件夹结构如下
/my_site [ drupal 站点根目录]
/mysite/index.php [ drupal 主索引文件]
/my_site/forum [我创建了这个文件夹,这不是标准的 drupal 文件夹]
/my_site/forum/viewforum.php [我把这个 php 文件放进去做一些自定义逻辑]
/my_site/forum/ [没有 index.php 文件,因为我希望 drupal 处理 /forum 并显示其具有的默认论坛模块]
一切正常,除了当一些人进入/forum 时,由于没有索引文件,他们被禁止 403。
我努力了:
1)创建符号链接指向主索引文件
2)重定向回 drupal 根目录,但 /forum 不起作用
我不确定如何让 nginx 允许 drupal 处理 /forum 但不允许 /forum/viewforum.php 请帮忙
答案1
我假设您已经在配置中实现了 Drupal 路由功能。
为了解决您的问题,您应该在配置中添加此代码片段:
location = /forum {
rewrite ^ /index.php last;
}
我假设my_site
这是您的 webroot,因此您的index.php
位于根文件夹中。