nginx 本地重定向从 /var/www/html/index.html 到 /var/www/html/larvel_project/public
Posted
技术标签:
【中文标题】nginx 本地重定向从 /var/www/html/index.html 到 /var/www/html/larvel_project/public【英文标题】:nginx local redirect from /var/www/html/index.html to /var/www/html/larvel_project/public 【发布时间】:2020-07-04 15:38:20 【问题描述】:我们正在开发一个本地 WIFI 项目,我们在 CPU 内使用支持互联网的 Ubuntu 服务器,我们没有任何域名指向它。我们提供来自 CPU 服务器的 wifi 访问,以便任何人都可以在我们本地访问它。
为了让强制门户网站正常工作,我们需要在以下文件夹中有 generate_204 文件夹
/var/www/html/generate_204/
从这里我们重定向到 index.php,它位于 generate_204 文件夹的同一级别,如下所示
/var/www/html/index.php
从这里我想重定向到我的 Laravel 项目文件夹,该文件夹位于与以下相同的级别内
/var/www/html/laravel_project/public/
整体结构如下
/var/www/html/
index.php
generate_204/
index.php
laravel_project/
public/
index.php
如何实现从 /var/www/html/index.php 到 /var/www/html/laravel_project/public/
的重定向以下是我当前的 nginx 设置:
server
listen 80 default_server;
root /var/www/html;
index index.php index.html;
server_name _;
add_header Access-Control-Allow-Origin *;
location /
try_files $uri $uri/ =404;
location ~ \.php$
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
location ~ /\.ht
deny all;
当我们有一个普通的 PHP 项目并且我们正在重定向时,上述 NGINX 设置工作正常。
非常感谢任何帮助。
【问题讨论】:
你是如何重定向的?在 PHP 中使用header("Location: ....")
?您对每个位置使用的具体值是多少?
是的,我正在使用 header("Location") 以及一些 get 参数,例如 header("Location: index.php?wd=XYZ&mac=XYZ&ip_address=XYZ");
【参考方案1】:
我认为不需要重定向到您的 laravel 文件夹。换行就好
root /var/www/html;
到 root /var/www/html/laravel_project/public;
我也有
location /
try_files $uri $uri/ /index.php?$query_string;
【讨论】:
是的,即使现在它的重定向正确。让我检查一下新实例以上是关于nginx 本地重定向从 /var/www/html/index.html 到 /var/www/html/larvel_project/public的主要内容,如果未能解决你的问题,请参考以下文章
nginx 重定向循环,从 url 中删除 index.php