父目录中的 htaccess 导致“RewriteEngine not allowed here”

2023-12-20

目前,我正在使用 OSX Server (Yosemite) 托管一堆 PHP 应用程序,其中一些应用程序在网站文档根目录下有一个用于子域的子目录。自从更新到 OSX Server 的 Yosemite 版本以来,这些子域一直抛出 500 错误,错误日志引用RewriteEngine not allowed here.

经过调查,我已确认父域网站和子域网站都有AllowOverride All已配置,并且 .htaccess 文件正在非子域站点上运行。另外,我发现重命名或以其他方式从父目录中删除 .htaccess 文件会导致子域再次开始工作。

/original_site_doc_root <- doc root for regular site
    .htaccess
    index.php
    ...
    subdomain/ <- configured as a seperate site in osx server as a subdomain
        .htaccess
        index.php
        ...

我所做的每一点谷歌搜索最终都会提到确保mod_rewrite已安装并且AllowOverride配置正确。

我的问题是,如何让 Apache 停止在子域站点上抛出 500 错误?

Edit

这是让我悲伤的子域的 .htaccess 文件(对域、目录和页面进行模糊测试以保护无辜者)

RewriteEngine On
Options +FollowSymlinks -Indexes
RewriteCond %{HTTP_HOST} ^www\.m\.somesite\.com$ [NC]
RewriteRule ^(.*)$ http://m.somesite.com/$1 [L,R=301]
RewriteBase /

# supress php errors
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
php_value docref_root 0
php_value docref_ext 0

# enable PHP error logging
php_flag  log_errors on
php_value error_log  /some/fuzzed/dir

RewriteRule ^$ /index.php [L]
RewriteRule ^home$ /home.php [L]

RewriteRule ^some-page1$ /some-page1.php [L]

RewriteRule ^some-page2$ /some-page2.php [L]

RewriteRule ^some-page3/(.*)$ /some-page32.php [L]
RewriteRule ^some-page3(\/?)$ /some-page32.php [L]

RewriteRule ^some-page4/(.*)$ /some-page4.php [L]
RewriteRule ^some-page4(\/?)$ /some-page4.php [L]

RewriteRule ^some-page5/(.*)$ /some-page5.php [L]
RewriteRule ^some-page5(\/?)$ /some-page5.php [L]

RewriteRule ^some-page6/(.*)$ /some-page6.php [L]
RewriteRule ^some-page6(\/?)$ /some-page6.php [L]

父目录/非子域站点的 .htaccess 或多或少相似,唯一真正的相关性区别是前两行:

RewriteEngine On
Options +FollowSymlinks -Indexes -Multiviews

刚刚遇到了同样的问题(在最近更新 Apache2 之后)并找到了解决方案。

假设您的域名是example.com目录是/var/www/example/,并且您有一个名为的子域api.example.com带目录/var/www/example/api/.

尝试使用以下内容:

<VirtualHost *:80>
 ServerName api.example.com
 DocumentRoot /var/www/example/api

 <Directory /var/www/example/>
     AllowOverride FileInfo Options
 </Directory>

 <Directory /var/www/example/api/>
     Require all granted
     Options +FollowSymLinks +MultiViews +ExecCGI -Indexes
     AllowOverride all
     Order allow,deny
     Allow from all
 </Directory>

</VirtualHost>

这应该有效!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

父目录中的 htaccess 导致“RewriteEngine not allowed here” 的相关文章

  • PHP 中的依赖注入

    我一直在研究依赖注入 我是在关注某件事还是完全没有关注 代码是好是坏 依赖注入与否 下面的代码是CMS系统的基础 现在有一个名为 page details 的表 其中存储了所有网页 目录 文件结构 htaccess index php cl
  • onchange 使用 radioChoice 获取当前值

    我尝试使用 radioChoice onChange 从无线电表单中获取选定的值 但似乎无法真正找到解决方案 onEvent 函数被调用 但从这里我不太确定如何获取该值 Code RadioChoice
  • 我怎样才能发现并生存被“Slashdotted”?

    在异常高的流量高峰中生存的好方法是什么 我的想法是 在某些触发点上 我的网站应该暂时切换到 低带宽 模式 切换到基本 HTML 页面 最少的图形 禁用可能会给数据库带来不必要负载的小部件 等等 我的想法是 监控CPU使用率 监控带宽 监控请
  • HTAccess - 令人困惑的干净网址

    如果我想简单地重定向 clients page to clients php view page我会使用像这样简单的东西 它效果很好 Options FollowSymlinks RewriteEngine on RewriteRule c
  • Apache PHP/OSX Mavericks: - 无法打开流:打开的文件太多

    我最近升级到 OSX Mavericks 从那时起 我开始在我的开发计算机上收到上述错误 代码中没有明显的问题 它是自动生成的Yii http www yiiframework com 示例应用程序 Mavericks 升级过程中发生的事情
  • 为什么index.html优先于index.php?

    我在服务器上有一个网站 主页是 example com index php 好的 我将一个名为 index html 的文件上传到服务器 根目录 当我在浏览器的 URL 栏中输入站点的域时 我感到惊讶 因为 index html 页面已加载
  • 如何在 apache 上为锚点 cms 重写指令

    我使用的是一个名为anchor的cms http anchorcms com docs getting started configuration http anchorcms com docs getting started config
  • 使用 VirtualDocumentRoot 的 SSL 虚拟主机

    我在 ubuntu 16 04 VM 上进行开发工作 当我处理多个项目时 为了让我的生活更轻松 我使用 VirtualDocumentRoot 和主机文件使用 dev 域从我的主文件夹中服务器站点 在 000 default conf 我有
  • 使用 Apache 在本地网络上托管网站

    我目前在我的机器上使用 Apache 在本地测试 PHP 网站 我只是想知道如何允许连接到本地网络的计算机访问本地计算机上托管的网站 如果仅通过 IP 本地网络上的计算机应该能够访问您的计算机 假设您没有防火墙阻止端口 80 HTTP 完成
  • 运行没有扩展名的 PHP 页面

    我想在 apache Web 服务器上运行我的 PHP 网页 而不需要 php扩大 所以我添加了以下代码 RewriteEngine on RewriteBase Rewritecond REQUEST URI NC RewriteRule
  • 在apache中有条件地设置缓存头

    我想根据访问文件的路径有条件地设置缓存标头 基本上 访问http www example com cache cache key 应该为具有遥远未来缓存标头的文件提供服务 我使用重写规则来设置环境变量 然后尝试根据该变量设置缓存控制标头 然
  • 重写规则,以便正确加载具有绝对路径的 css 和 js 文件

    我花了两个小时 但我无法弄清楚 我不知道如何谷歌解决方案 这是我在 htaccess 文件中的重写规则 RewriteCond REQUEST URI blog RewriteRule blog http localhost 2368 1
  • .htaccess 异常导致主目录出现问题

    这是我的目录结构 localhost or livehost app bootstrap public vendor code demo 这是我的 htaccess
  • 从 http 页面永久重定向到 https 页面

    当我尝试使用 htaccess 创建从 HTTP 页面重定向到 HTTPS 页面 仅适用于特定页面 的规则时 我收到了循环重定向 我哪里错了 Options FollowSymLinks RewriteEngine On RewriteCo
  • 强制 Apache HTTPD 以 32 位运行

    我通过从二进制文件 以及 ppc 部分 中剥离 32 位架构 以 64 位模式运行 Apache HTTPD 我这样做是为了使其与 python 和 mysql 更加兼容 然而 我有另一台机器需要它以 32 位模式运行 它仍然保留所有四种原
  • URL 中的 %2F 中断并且未引用所需的 .php 文件 [重复]

    这个问题在这里已经有答案了 我需要将 作为变量作为 URL 的一部分传递 我的结构如下所示 www domain com listings page 1 city Burnaby South type Townhome bedroom 2
  • 图像随机损坏(但刷新后加载)并显示“资源解释为图像但使用 MIME 类型 text/html 传输”

    我目前正在开发一个简单的 php 网站 问题是 我的整个网站中的图像 发生在所有 php 文件中 随机损坏并显示错误资源解释为图像 但以 MIME 类型 text html 传输但是 如果我尝试多次刷新页面 可以再次加载图像并且错误消失 我
  • Apache + Symfony2 + HTTPS + Node.js + Socket.io:socket.emit 未触发

    我花了几个小时来解决这个问题 但毫无结果 编辑 找到解决方案 参见我的答案 项目背景 我正在构建一个项目Symfony2 这需要一个用于上传大文件的模块 我选择了Node js and Socket IO 我必须从头开始学习 所以我可能会错
  • 将 http 和 https 请求重定向到新主机

    在 Apache 2 4 6 中 我想重定向来自http A org foo and https A org foo to https B org foo 我正在使用以下指令
  • 如何从网站网址中隐藏 .html 扩展名

    我知道这个问题以前曾被问过 但有人知道隐藏 html 扩展名的好方法吗 我已经尝试了许多代码和许多答案https stackoverflow com https stackoverflow com 但我没有看到结果 那是我再问你一次 我有一

随机推荐

  • 可以让 jqGrid 搜索框留在页面上吗?

    现在 我必须单击 jqGrid 搜索图标才能弹出搜索框 我想做的是始终在网格上方打开搜索框 而不是弹出窗口 我在他们的演示中没有看到任何内容 但我希望有人已经做到了或知道如何做到 做你需要的最简单的方法是 var grid list prm
  • 将 Woo Commerce 下拉菜单转换为单选按钮

    我在将变体下拉列表转换为支持 woocommerce 的网站的单选按钮时遇到问题 我已经尝试找到答案here https stackoverflow com questions 11819604 dropdown converted to
  • Android BLE Gatt 特性 WRITE_TYPE_NO_RESPONSE 不起作用

    我开发了一个连接到 CC2540 BLE 外设的 Android 应用程序 当我执行类型为无响应 WRITE TYPE NO RESPONSE 的特征写入时 我仍然会在应用程序级别收到 onCharacteristicWrite 回调 这种
  • 转换到 Swift 3 的困难

    从 Swift 2 转换到 Swift 3 后 即使在转换编辑 gt 转换 gt 到当前的 swift 语法之后 我收到很多错误 尤其 在我下载此 beta Xcode 8 0 并转换为 Swift 3 之前 我的项目总共显示了 90 个错
  • 删除大标题 UINavigationBar 中 UISearchController 顶部的 1px 行

    我正在从大风格的视图过渡UINavigationItem进入具有大风格的视图UINavigationItem and a UISearchController 我已经自定义了背景颜色UINavigationBar 由于某种原因 之间有 1p
  • PsExec 仅适用于“runas /netonly”,不适用于 -u 和 -p 参数

    我的意思是说 If I run runas netonly user computername username cmd 输入本地管理员帐户 用户名 的密码 然后输入psexec computername cmd 我现在有了一个工作 she
  • 获取脚本标签的数据属性?

    假设我有以下脚本标签 在那之内embed js文件 我怎样才能得到它的值data id属性 我正在努力保持embed js文件尽可能轻 所以理想情况下不需要使用某种 JavaScript 库 对于支持 html5 的现代浏览器 您可以使用d
  • 我可以多次使用

    标签,一个用于桌面,另一个用于移动吗?

    我正在使用 bootstrap 3 html 5 我的问题是 我可以使用 h1 在同一页面中多次标记 我正在使用一个 h1 对于桌面和其他 h1 对于移动设备 搜索问题后我有点困惑 任何人都可以正确地建议我正确的方法吗 我的代码如下 这些代

  • 天蓝色表存储中的事务

    假设我有 using TransactionScope scope new TransactionScope if IndexExists index RowKey DeleteIndex index RowKey deletes usin
  • iOS:如何写入项目中特定目录的文件?

    我正在尝试将我在应用程序中收集的一些字符串输出到文本文件中 文本文件将始终存在于我的项目中 如下所示 我试图用新的 多行 字符串覆盖文件中的所有内容 func writeFile let theFile FileHandle FileHan
  • 使用 javascript 执行器为 selenium webdriver ruby​​ 绑定脚本启用禁用字段

    我正在 Selenium Webdriver 脚本中编写以下 Ruby 代码 以通过 Javascript 执行器启用 UI 上的禁用字段 browser execute script browser find element xpath
  • 三个彼此相邻的 DIV,具有流畅的水平宽度

    我需要知道如何将所有三个 div 与所有不同的背景图像对齐 中间的 div 需要为 989px 左 div 和右 div 的宽度并不重要 简而言之 http jsfiddle net hobobne qyGC5 http jsfiddle
  • 在 Mobile Safari 中保持 WebSocket 处于活动状态

    一旦屏幕锁定 是否可以在 Mobile Safari 中保持 html 5 网页 WebSocket 连接打开 我想向用户发送全天的持续更新 而他们的屏幕必须始终解锁才能接收这些通知 这似乎很愚蠢 还有其他选择吗 我认为当浏览器处于后台或屏
  • Java BufferedReader 返回文本文件的顶部?

    我目前有 2BufferedReaders 在同一文本文件上初始化 当我读完第一个文本文件后BufferedReader 我使用第二个从顶部再次遍历文件 需要多次遍历同一文件 我知道关于reset 但需要先调用mark and mark 需
  • 如何在mongo中插入带有日期的文档?

    我们正在尝试插入一个以当前日期作为字段的文档 我们正在使用 mongodb 的 eclipse 插件用 java 编写 我们想要执行Date mongo 命令从 mongo 获取日期 而不是从 java 获取日期 我怎样才能执行这个 mon
  • 如何将 C 函数移动到单独的文件中?

    我正在开始 C 编程 我目前有一个包含很多函数的大文件 我想将这些函数移至单独的文件中 以便代码更易于阅读 但是 我似乎无法弄清楚如何正确包含 编译 并且在我找到的任何在线教程中都找不到示例 这是一个简化的示例 include
  • CSS 字体未在 IE9 中加载

    我遇到了 font face 字体无法在 IE9 中加载的问题 IE8 及更低版本运行完美 就像我尝试过的所有其他浏览器一样 这是我的 CSS 字体松鼠语法 font face font family ssmicon src url ssm
  • Log4Net - 我可以在 Config 中拥有自定义部分名称吗

    我需要在配置部分使用除 log4net 之外的部分名称 我知道这是我们通常使用的 section type section 但我需要有一个这样的部分 section type section 我正在开发一个 sitecore 网站 它有自己
  • 使用便携式打印机通过蓝牙与 Delphi XE7 连接

    我正在尝试与世宇LK P32通过蓝牙打印机 为此 我正在使用德尔福XE7 我用 Delphi 做了一些例子 但没有成功 我将配对的打印机放在平板电脑上 即使这样我也无法连续打印 当我打印某些内容时 必须重新启动应用程序 以便我可以再次打印某
  • 父目录中的 htaccess 导致“RewriteEngine not allowed here”

    目前 我正在使用 OSX Server Yosemite 托管一堆 PHP 应用程序 其中一些应用程序在网站文档根目录下有一个用于子域的子目录 自从更新到 OSX Server 的 Yosemite 版本以来 这些子域一直抛出 500 错误