【问题标题】:.htaccess issue with no access to Apache.htaccess 问题,无法访问 Apache
【发布时间】:2014-11-20 04:23:04
【问题描述】:

如上所述,我们接到了一个项目的任务,但被告知必须将其上传到大学服务器,并且还必须使用大学数据库(绝对荒谬)。

我开始使用以下框架开发应用程序:Laravel。 不幸的是,我遇到了一个障碍,我相信大学 Apache 服务器正在引起问题,但我无法证明这一点,因为我对所有这些重写的东西还是新手。

我确定 Apache Rewrite 已启用。

我的大学html文件系统目录如下:

/home/nt***/public_html/

要访问这些文件,我们必须导航到(我已经剪切了实际地址):

RewriteRule ^(.*)$ http://universitywebsite.ac.uk/~nt***/public/index.php

现在,无论出于何种原因,转到地址:http://universitywebsite.ac.uk/~nt***/public/ 会自动将我重定向到:http://universitywebsite.ac.uk/public 这是由他们的 apache 设置引起的吗?如果是这样,有没有办法解决它?

尽管如此,我仍然可以使用以下 .htaccess 文件:

RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ http://universitywebsite.ac.uk/~nt***/public/index.php/$1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ http://universitywebsite.ac.uk/~nt***/public/index.php [L]

它适用于除基础 http://universitywebsite.ac.uk/~nt***/public/ 之外的所有内容,因为这仍然会重定向我。请求uri如下:REQUEST_URI /~nt****/user/login。 这显然行不通。因为那不是正确的文件系统目录。

我很困惑!对不起,我缺乏知识,如果我能提供任何帮助,请告诉我。

【问题讨论】:

  • 第一条规则应该做什么?
  • 诚实吗?我没有任何线索。我基本上只是复制了 laravel 并玩了一点
  • 你试过删除它吗?
  • 老实说,甚至很难解释它目前在做什么:.完全没有 .htaccess 文件,以下工作:universitywebsite.ac.uk/~nt***/public/index.php/user/login 但显然不理想,不幸的是,所有链接都指向错误的目录:universitywebsite.ac.uk/public/css/font-awesome.min.css
  • 如果对大学网站的管理不放心,请咨询你所在大学的网站管理员,或者转至其他大学。

标签: php apache .htaccess mod-rewrite laravel


【解决方案1】:

您的第二条规则不应在目标 URI 中包含 http:// 以进行内部重写。试试这个作为第二条规则:

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . /~nt***/public/index.php [L]

【讨论】:

    猜你喜欢
    • 2011-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-08
    • 1970-01-01
    • 2019-09-25
    • 2014-07-04
    相关资源
    最近更新 更多