我在Laravel及其路线方面遇到了问题。
我正在重组我今年早些时候上网的网站,我决定直接使用视图,而不是通过AJAX调用后端数据。由于我将部署到共享主机,我将Laravel的公共文件夹移动到项目的根文件夹,然后我将Laravel移动到它自己的文件夹中。我在开发环境中使用WAMP,目前,这是我的项目设置:
项目根文件夹
在bootstrap文件夹中配置Laravel的路径后,此设置正常,我可以导航到 localhost / project-root-folder 以查看我在Route上设置的视图: :获得(“/').
我的问题是当我尝试从主页视图访问我网站中的其他页面时(我已经使用其他路由来调用视图)。 Laravel不断返回404错误消息,只有当URL包含 localhost / project-root-folder / index.php 时,路由才有效。我在WAMP中启用了Apache上的mod_rewrite并重新启动了网络服务器,这是我的.htaccess文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
最重要的是,每当我尝试使用URL中的index.php访问第二页的链接时(只是为了确保它有效),我的CSS和JS文件都被破坏了。它似乎停止尝试从根文件夹中找到文件,而是尝试根据URL在某个虚构文件夹中找到它们。因此,如果我的辅助链接被称为 localhost / project-root-folder / cars / all ,并且为了使其工作,我必须键入 localhost / project-root-folder / index .php / cars / all ,网站将尝试在 localhost / project-root-folder / index.php / cars 中找到我的CSS文件,这根本不是我想要的
以下是我的标题布局视图中的JS和CSS文件的一些声明:
<link rel="stylesheet" type="text/css" media="screen" href="./css/custom.css">
<link rel="stylesheet" type="text/css" media="screen" href="./style.css">
<link rel="stylesheet" type="text/css" media="screen" href="./menu/css/simple_menu.css">
<script src="./js/jquery.tools.min.js" type="text/javascript"></script>
<script src="./js/translate.js" type="text/javascript"></script>
<script src="./js/common.js" type="text/javascript"></script>
这个链接似乎可以在主页面上工作,但不能在任何链接页面上工作,即使我已经明确说明它应该通过在 ./ 之前添加链接从根文件夹中检查
任何帮助?