问题标签 [mod-alias]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1230 浏览

apache - 配置 apache mod_alias 给出内部服务器错误

我的虚拟主机有以下配置

我在 /home/mydir/proj 中安装了 laravel,当我尝试访问http://mydir.domain.com/proj时,我得到“内部服务器错误”,并且在日志中我得到以下信息:

重写日志:

apache-local-error_log:

在 /home/mydir/proj/public_html 我有标准的 .htaccess 用于 laravel:

任何我做错的建议将不胜感激。

0 投票
2 回答
745 浏览

apache - Apache DirectoryIndex 指令无法在 Ruby on Rails 中正常工作

我有一个站点,Ruby on Rails 通过 Phusion Passenger 在根目录中运行。一些 ApacheAlias指令提供静态 HTML 目录。

如果您从其中一个静态目录请求文件的确切 URL,Apache 会按预期返回它。但是,在某些情况下,我没有得到预期的行为。考虑别名Alias /functional /path/to/functional,其中功能目录包含index.phphello.jpg

  1. 对https://example.com/functional/hello.jpg的请求按预期返回 JPEG 文件。
  2. 对https://example.com/functional/index.php的请求会运行 PHP 脚本并按预期打印生成的 HTML 文档。
  3. 对https://example.com/functional/的请求会导致Rails 堆栈中出现 404 。
  4. 对https://example.com/functional的请求(没有尾部斜杠)也会导致 Rails 堆栈中出现 404。理想情况下,此 URL 应返回 301,将用户重定向到http://example.com/functional/

如果我将index.html文件添加到功能目录中(除了已经存在的index.php之外),路径 #3 和 #4 会按预期返回该文件。

这是我的乘客 Apache 配置文件中的相关部分:

对于静态目录:

我已经尝试了 index.php 中的大多数答案,默认情况下不加载以使index.php加载,但没有占上风。我什至不需要指定DirectoryIndex index.php,因为该行已经在conf.d/php.conf中。

关于如何解决这个问题的任何想法,Rails 在应该在 Apache 堆栈中的其他地方提供 404 的 URL 上?

0 投票
1 回答
125 浏览

regex - 重定向规则以匹配某些关键字但不匹配其他关键字

我正在尝试编写一个RedirectMatch( apache) 来匹配除一个之外的一些关键字。

我想出了这条RedirectMatch规则,它将所有包含横幅、文档等的 url 重定向到 aws 域。

现在,我想阻止包含temp转到 aws 域的 url。为此我添加了!temp

这不允许 urlmysite.com/temp/a.jpg去 AWS(但抱怨无限循环),但不会阻止mysite.com/images/temp/a.jpg被重定向。此规则的正确正则表达式应该是什么?

[编辑]

  • mysite.com/images/foo/a.jpg 应该去 AWS
  • mysite.com/images/foo/temp/a.jpg 不应该去 AWS
  • mysite.com/temp/a.jpg 不应该进入 AWS

[EDIT2] 这让我接近了我正在寻找的东西

0 投票
0 回答
66 浏览

php - apache重写规则到文件

[Ubuntu14/Apache2.4]
我想对 DocumentRoot 外的文件使用重写规则:

但是,我不能,因为 Apache 搜索 DocumentRoot 文件夹中不存在的文件。

所以我可以使用 AliasMatch:

但是 Apache 返回 PHP 脚本本身,而不用它的 File 参数解释它。

有没有人有这样做的想法?谢谢,

0 投票
1 回答
928 浏览

apache - 使用 mod_alias 时需要 RewriteBase

在我的 apache 配置中,我创建了一个别名:

在“projecten/mvc”文件夹中,我有一个 .htacces 文件:

当我转到浏览器http://localhost/projecten/mvc/时,我收到一条错误消息:

在此服务器上找不到请求的 URL /Users/Youri/SkyDrive/Projecten/mvc/public/。

当我将文件夹(mvc)复制到我的文档根目录并导航到http://localhost/mvc/时,重写工作..

当我添加到我的项目文件夹中的 htaccess 文件时:

它可以工作,但我不想添加 RewriteBase,因为当我将它放在文档根目录中时,我不需要它......

有人可以告诉我出了什么问题吗?

Apache/2.4.10 (Win64) OpenSSL/1.0.1j PHP/5.6.4 已配置

0 投票
1 回答
695 浏览

apache - 如何设置 Apache 以从子路径运行 Laravel?

的 在。DocumentRoot_example.com/var/www/html

Laravel 已安装,/var/www/example/public我可以使用它来访问它,http://example.com/dashboard但是当我尝试访问其他路由时出现问题,比如 ashttp://example.com/dashboard/login并且抛出404 Not Found错误。并说The requested URL /var/www/example/public/index.php was not found on this server.有人可以指导我吗?

公共目录中的.htaccess文件保持不变。

这是000-default.conf

0 投票
1 回答
647 浏览

apache - 301 重定向无法正常工作

我需要将在Ghost上运行的子域上的博客及其所有帖子重定向到新位置。当前位于http://blog.example.com并需要重定向到http://example.com/blog/

对于最初的 Ghost 博客,Apache 被用作代理,因为 Ghost 在 node.js 上运行。因此,我不能简单地.htaccess在 Ghost 安装的根文件夹中使用 a。

我使用了301 重定向生成器来设置所有需要的重定向,然后将代码直接放在 中etc/apache2/sites-enabled/000-default.conf,如下所示:

然后我重新启动了服务器。

http://blog.example.com现在正确重定向到http://example.com/blog/,但个别帖子指向错误的位置。而不是应用新位置,例如post-title-1.html,它们被指向http://example.com/blog/post-title-1/,这在逻辑上会引发 404 错误。

非常感谢您的建议,如何解决这个问题。

0 投票
0 回答
39 浏览

regex - 访问 DocumentRoot 之外的文件

http://site1.bla.example.comhttp://site2.bla.example.comhttp://site2.bla.example.com都指向/var/www/html我的 DocumentRoot。

鉴于以下目录结构,我希望http://site1.bla.example.com/files/somefile1.png返回somefile1.pnghttp://site2.bla.example.com/files/somefile2.png返回somefile2.png等.

这是如何实现的?以下是我不成功的尝试。

0 投票
1 回答
446 浏览

.htaccess - Apache Alias + Rewrite:如何更改别名文件夹的绝对路径

我有一个需要移动到子目录的网站。

我的问题是,有没有办法重写从根目录到新目录的所有绝对路径请求?

例如:

会变成:

有没有办法用 mod_rewrite 做到这一点?

谢谢,非常感谢任何帮助!

0 投票
2 回答
44 浏览

apache - 虚拟主机配置问题

我有两个应用程序,我想通过 Apache 中的端口 80 在同一 IP 主机上提供服务。为此,我定义了以下虚拟主机:

问题是只有列表中的第一个被识别(它们都独立工作)。我缺少什么让这两者一起工作,独立于订单?

编辑

由于跨域(包括主机名和端口)的 CORS 身份验证问题,我试图避免使用不同的服务器名称。我想要的只是两条不同的路径来相应地解决:http://test.com/cardiocatalogqthttp://test.com/api