当我尝试使用laravel PHP框架时,我尝试将它放在一个名为dir的dir中/home/usr/proj/laravel,但是我们知道laravel的公共html已经解决了/home/usr/proj/laravel/public,因此我的问题是如何设置nginx以便当我访问时mysite.com/laravel/或者mysite.com/laravel,我们实际上已重定向到该位置laravel/public/index.php.
此外,似乎有一个由laravel官员建议的nignx规则,使网址看起来很漂亮
location / {
try_files $uri $uri/ /index.php?$query_string;
}
Run Code Online (Sandbox Code Playgroud)
我怎么能在我的情况下使用它?
UPDATE
看来下面的代码对我有用(但在RouteCollection.php第145行给出错误NotFoundHttpException:可能是由我的路由器设置引起的)
location /laravel{
root /home/usr/proj/laravel/public;
index index.php index.html;
try_files $uri $uri/ /laravel/public/index.php?$query_string;
}
Run Code Online (Sandbox Code Playgroud)
关于您的更新,我认为您应该保留原来的try_files语法:
try_files $uri $uri/ /index.php?$query_string;
Run Code Online (Sandbox Code Playgroud)
因为位置设置为/laravel并且根目录位于公共文件夹中。目前的写法最终是寻找文件/home/usr/proj/laravel/public/public/index.php在磁盘中查找文件。
您还应该检查配置应用程序 URL,使其包含/locationURL 的一部分。我不太确定 Laravel 5 是如何配置的,因为我的经验是 Laravel 4。
| 归档时间: |
|
| 查看次数: |
92 次 |
| 最近记录: |