繁体   English   中英

Laravel CSS和JS给出了找不到的页面,避免指定index.php

[英]Laravel css and js gives a page not found, avoid specify index.php

我最近购买了一个VPS,并试图在那里部署一个可以在localhost完美运行的个人laravel项目。

我要做的是将所有项目打包并在VPS(/ var / www /)上解压缩。 我已经安装了LAMP,并创建站点配置(/etc/apache2/sites-available/anuncios.com.conf)并启用了它(在/ etc / apache2 / sites-available上创建链接),如下所示:

<VirtualHost *:80>
ServerName 137.94.162.235
DocumentRoot "/var/www/anuncios.com/public/index.php"
<Directory "/var/www/anuncios.com/public">
AllowOverride all
</Directory>
</VirtualHost>

这是一个laravel 5.1.26,在公共目录下带有tipycal .htaccess:

<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]
</IfModule>

该站点可以正常运行,但是没有加载.js或.css文件之类的资源。 检查链接,例如:

http://137.94.162.235/css/externos/bootstrap.min.css

我收到了Laravel错误:404 Uups,找不到页面。

请帮助使其工作吗?

所有权是1000:apache2,并且许可权与我的本地主机中的许可权相同(除非要确定,公共为777,所以除外)。

编辑 :我遵循了Huzaib的建议,现在加载了所有内容,剩下的问题是现在我必须将站点定位为137.94.162.235/index.php否则137.94.162.235无法正常工作。

在您的apache配置中, DocumentRoot必须是目录而不是文件。

DocumentRoot "/var/www/anuncios.com/public/"

进行建议的更改,然后重新启动apache2 service

解决了,

首先,我遵循Huzaib Shafi的回答,并更改了/etc/apache2/sites-available/anuncios.com.conf将DocumentRoot更改为公用文件夹(而不是index.php)。

最后,为了避免指定index.php,我必须从命令行启用apache mod rewrite:

a2enmod rewrite

这使apache可以遵循public/.htaccess一些指令。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM