htaccess给Caddy改写

问题描述 投票:1回答:1

我正在尝试在Caddy服务器上安装Cachet但是当我尝试访问网页时它试图进入/设置,但是Caddy给了我'404 Not Found'。

对于Apache,他们说你必须使用它:

<Directory "/var/www/Cachet/public">
    Require all granted 
    # Used by Apache 2.4
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

但是我如何在我的Caddy文件中执行此操作?我想它与符号链接有关,因为没有实际的安装文件夹。

.htaccess of Cachet

<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
    Options -MultiViews
</IfModule>

RewriteEngine On

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

apache .htaccess caddy
1个回答
0
投票

但是我如何在我的Caddy文件中执行此操作?我想它与符号链接有关,因为没有实际的安装文件夹。

实际上它不是关于符号链接,而是URL重写。 Cachet是使用Laravel 5开发的Web应用程序,每个HTTP请求都被路由到public/index.php

所以实现安装的方法是:

  • 启用.htaccess。
  • 在Apache上启用mod_rewrite

因此,所有HTTP请求都将路由到public/index.php,它将调用App/Http/Controllers/SetupController。这不是一个象征性的联系。

我不知道Caddy所以我无法解释你如何配置它,但有一个Caddy post,有人需要在Caddy中启用mod_rewrite。

© www.soinside.com 2019 - 2024. All rights reserved.