2017-01-16 175 views
3

我有一个laravel项目,它在本地机器上正常工作,我已经在家园设置了它,但是当我将项目上载到namecheap上的生产服务器时,没有任何链接或路线工作,我只打开没有样式的索引页面,如果我点击任何链接,我会得到500错误。 我按照建议的步骤hereLaravel路由不生产生产服务器404错误

因此,我的laravel项目目录与public_html以及我的laravel项目中的公共目录处于同一级别。他们都在相同的目录级别。我已经改变了index.php文件的路径:

require __DIR__.'/mariva/bootstrap/autoload.php'; 
$app = require_once __DIR__.'/mariva/bootstrap/app.php'; 

然后,我已经改变了laravel项目目录内的server.php:

require_once __DIR__.'../public_html/index.php'; 

权限显然由namecheap客户服务设置,但我仍然得到所有我的CSS和JS文件的404错误,以及点击我的网页上的一些HTML链接。

在视图文件,我打电话给我的css文件是这样的:

<!-- CSS Files --> 
    <link href="{{ asset('css/material-kit/css/bootstrap.min.css') }}" rel="stylesheet" /> 
    <link href="{{ asset('css/material-kit/css/material-kit.css') }}" rel="stylesheet"/> 
    <link href="{{ asset('css/landing-page.css') }}" rel="stylesheet"/> 

和js文件的方式:

<!-- Core JS Files --> 
<script src="{{ asset('js/landing-page/jquery.min.js') }}" type="text/javascript"></script> 
<script src="{{ asset('js/landing-page/bootstrap.min.js') }}" type="text/javascript"></script> 
<script src="{{ asset('js/landing-page/material.min.js') }}"></script> 

<!-- Control Center for Material Kit: activating the ripples, parallax effects, scripts from the example pages etc --> 
<script src="{{ asset('js/landing-page/material-kit.js') }}" type="text/javascript"></script> 

不知道我该怎么解决呢?

我已经设法解决的CSS,而不是打开文件的JS问题更新,我错误地移动文件到错误的目录。但是我仍然无法在页面上获得任何链接。

在我看来,我有这样一个环节:

<a href="{{ url('/login') }}">Login</a> 

并在其上点击时,我得到404错误。

+0

是您的服务器VPS?你的.htaccess工作吗? – Buglinjo

+0

你部署在共享主机或服务器专用? –

+0

我在共享服务器上部署 – Marco

回答

0

您需要在共享主机中设置Laravel项目,这很好地解释了here

通过全部7个步骤成功后,您的项目应该在服务器上正常工作。

而且这public_html

Options +FollowSymLinks 
RewriteEngine On 

RewriteRule^index.php [L] 

添加到您的.htacces文件希望它可以帮助

+0

我在阅读文档后编辑了我的问题。 – Marco

+0

您是否已将Laravel的所有公用文件夹内容复制到托管文件夹'public_html'?不要覆盖'index.php'和'.htacess'文件。 – KuKeC

+0

我已经将公共laravel文件夹中的所有内容复制到public_html文件夹中,但.htacess文件除外。我修改了public_html文件夹中的existin.htacess文件,并添加了您建议的代码,所以现在看起来像这样:'''DirectoryIndex index.html index.php index.htm parking-page.html suPHP_ConfigPath /家庭/ marigxwy /的public_html 选项+的FollowSymLinks RewriteEngine叙述 在 重写规则^的index.php [L]'''但是我仍然没有得到任何CSS和JS链接打开。 – Marco

-2

该文件必须在公用文件夹。在终端

运行php artisan serve并在浏览器的URL http://localhost:8000/

0

选项-MultiViews

RewriteEngine On 
RewriteBase /laravel51/public/ 

#上面的变化到您的网站,即,RewriteBase /不管/公/

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

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

在.htaccess文件有可能改变