1

我正在尝试在 Caddy 服务器上安装 Cachet,但是当我尝试访问它尝试转到 /setup 的网页时,但 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>

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

.htacces 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}]

4

1 回答 1

0

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

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

所以实现你安装的方法是:

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

所以所有的 HTTP 请求都将被路由到public/index.php,它会调用App/Http/Controllers/SetupController. 这与符号链接无关。

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

于 2018-03-04T19:12:33.147 回答