繁体   English   中英

Ubuntu 上的 Laravel 项目:问题重定向 www url 到非 www Z572D4E421E55E6B7BC18D

[英]Laravel Project on Ubuntu: Issue redirecting www url to non www url

我有一个托管在 AWS EC2 Ubuntu (ngnix) 上的 Laravel 9 项目。 该域已在 GoDaddy 注册,我更改了 A 记录以将其指向 AWS EC2 上的 IP。 当我使用 url (如 example.ca)时,我的网站运行良好,但是,当我使用 url www.example.ca时它不起作用(我得到默认的Welcome to nginx!页面)

根据谷歌搜索,我在 public/.htaccess 中添加了以下重写规则

RewriteCond %{HTTP_HOST} ^www.example.ca [NC]
RewriteRule ^(.*)$ http://example.ca/$1 [L,R=301]

但是,它没有帮助。 我仍然继续获取默认的 Nginx 页面。

在此处输入图像描述

还有什么我需要做的吗? 例如,在启用了站点的. 我想补充一点,当我设置项目时,我在/etc/nginx/sites-available文件夹中创建了一个新文件,其中包含以下内容

server {
    listen 80;
    listen [::]:80;
    server_name example.ca;
    root /var/www/vhosts/example.ca/public;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    index index.php;

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    error_page 404 /index.php;

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.(?!well-known).* {
        deny all;
    }
}

非常感谢任何帮助。

更改server_name example.ca; server_name example.ca www.example.ca; 解决了这个问题。 (感谢安德鲁圣丹尼斯。)

server {
    listen 80;
    listen [::]:80;
    server_name example.ca www.example.ca;

暂无
暂无

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

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