php - 将新的 Laravel 项目部署到实时服务器 - 内部页面链接不起作用

标签 php mysql laravel laravel-5 ftp

我最近通过 FTP (Filezilla) 将 Laravel 项目部署到我的实时 Web 服务器。在我的 young1.org Web 根文件夹中,我有子域文件夹 bookings,它显示 http://bookings.young1.org 处的 Web 内容。在该文件夹中,我有一个文件夹“laravel”,其中包含我的整个 laravel 应用程序,在该文件夹中有一个“public”目录。

我已通过 phpmyadmin 将本地数据库导入到实时 Web 服务器上的数据库帐户之一,并且已将“DB”凭据切换为指向 laravel 项目根目录中的 env 文件内的新数据库(更改以下变量:DB_DATABASE、DB_USERNAME、DB_PASSWORD)。

当我导航到 http://bookings.young1.org/laravel/public 时,我的应用程序的主页出现了,非常漂亮。但是,当我单击任何内部链接(例如登录和注册)按钮时,我只会看到一系列空白页面,并且不会出现任何内部页面。

有人能猜猜问题出在哪里吗?

我尝试将 .htaccess 文件更改为如下所示,并更改 public/index.php 中的“PATHS”变量。

谢谢

罗伯特 英国伦敦

//public/.htaccess

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

RewriteEngine On
RewriteBase /

# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]

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

//public/index.php

require DIR.'/../laravel/bootstrap/autoload.php';

$app = require_once DIR.'/../laravel/bootstrap/app.php';

最佳答案

do you have SSH on the server? if yes did u install laravel as you're supposed to, also could you include the .env file contents, you can mask out the DB username and pass and the key you had to generate

别介意我的错误,我点击了一个链接并收到了 SQL 连接错误(被拒绝)

我仍然需要知道你是否通过 SSH 安装了 laravel,或者你只是将公共(public)文件夹设置为根目录,因为如果是这种情况,laravel 无法帮助你(你需要一个 VPS,而不是一个只支持 FTP 的虚拟主机)据我所知)

并且可以肯定的是

BE CAREFULL!!!

您有显示凭据的 SQL 连接错误

关于php - 将新的 Laravel 项目部署到实时服务器 - 内部页面链接不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40631664/

相关文章:

php - 数据库关系 - Laravel

php - Laravel 作业不是异步的

php - 确认弹出窗口并将 php 值传递给 js,输入图像作为提交

java - mysql错误: Truncated incorrect DOUBLE value: 'world'

mysql - MySQL创建 “before insert”触发器失败并引发触发器错误

mysql - Lightswitch + WCF RIA + MySQL 连接器/网络几乎可以工作,但还不太好

laravel - Redis 未在 Laravel 5.1 中接收广播事件

php - Yii2:phpoffice/phpexcel 将 .xlsx 文件识别为 HTML

php - 无法将值 '-1' 插入数据库

PHP、MySQL 和临时表