本机使用的是window环境,一切正常,但是部署到linux系统上(配的是nginx),在访问的时候,控制器和方法都能正常执行,页面也可以输出,但是输出的页面却缺少css文件,一查是500错误,已经将请求重定向到public文件夹下,
我的目录结构是:
public/web/css/css.css
域名是:
aaa.com
直接访问aaa.com就会执行Publc/index.php(因为设置了nginx,将请求重定向到public文件夹下),也可以正常输出页面,但是页面上请求的:
url:aaa.com/web/css/css.css
却是500错误,百思不得其解,请大神指教.谢谢各位.
现在发现一部分问题是nginx配置问题,网上抄了个设置:
server {
listen 80;
server_name xxx;
access_log xxx main;
root xxx;
#root xxx;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
#fastcgi_split_path_info ^(.+\.php)(/.+)$;
}
}
虽然现在可以访问首页了,但是现在有了另外的问题,我的项目是带有前后台的,前台可以访问,但是后台无法访问,我是这样实现前后台的,使用路由分离,我在RouteProvider.php中的map方法配置了两个路由文件:
public function map(Router $router) {
//加载前台路由文件
$router->group([
'namespace' => 'App\Http\WebControllers',
// 'prefix' => 'Web',//引入前缀
//'middleware' => 'some_common_middleware',
], function ($router) {
require app_path('Http/routes/routes.php');
});
//加载后台路由文件
$router->group([
'namespace' => 'App\Http\AdminControllers',
'middleware' => 'App\Http\Middleware\LoginMenuMiddleware',
'prefix' => 'Am',//引入前缀
], function ($router) {
require app_path('Http/routes/admin_routes.php');
});
}
现在我的无法登录后台,即xxx.com/Am/Index/index会发送500错误,并且前台的ajax也无法执行.
项目结构目录:
谢谢大家的帮助,很可惜最后只能给一位大神采纳.情况是这样的,我这里做出说明以备后来的人发生跟我一样的情况.
如果出现跟我一样的情况,请先检查服务器bootstrap/cache目录下是否有缓存文件,有则请清空,在尝试.确实是由于缓存的存在导致的.