【问题标题】:How to setup up Laravel with Nginx on AWS linux AMI如何在 AWS linux AMI 上使用 Nginx 设置 Laravel
【发布时间】:2021-06-22 22:32:24
【问题描述】:

我正在尝试在 AWS linux ami 上使用 nginx 来使用 laravel,但是当我尝试访问我的实例公共 ip 时,我找不到文件。这就是我的工作

sudo amazon-linux-extras install nginx1
sudo service nginx start

在这一步之后,我确定 nginx 正在工作,因为我可以看到 nginx 网页。现在我正在尝试安装 laravel

sudo amazon-linux-extras install php7.3
sudo yum install php-xml php-mbstring
sudo service php-fpm start
sudo service nginx restart
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
composer global require laravel/installer
export PATH=$PATH:/home/ec2-user/.config/composer/vendor/bin/
laravel new test
sudo vi /etc/nginx/nginx.conf





server {
    listen 80;
    server_name _;
    root /home/ec2-user/test/public;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    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-fpm/www.sock;
      fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
      include fastcgi_params;
    }
    location ~ /\.(?!well-known).* {
       deny all;
    }
}
sudo chown -R apache:apache storage/
sudo chown -R apache:apache bootstrap/cache

当我尝试加载我的页面时,我收到的文件未找到。

【问题讨论】:

    标签: php linux laravel nginx amazon-ami


    【解决方案1】:

    您可以通过 2 种方式解决此问题:

    1. 提供有效的服务器名称/域
    2. 修复 Nginx 默认 IP 地址

    提供有效的服务器名称

    您需要在 Nginx 配置中修复服务器名称,您已将服务器名称设置为 _。您需要在那里放置一个有效的域名。例如:

    server_name example.com;
    

    然后创建指向IP地址的域的A记录。例如:

    example.com    A    123.123.123.123
    

    修复 Nginx 默认配置

    默认情况下,如果您安装 Nginx,服务器 IP 会从 /var/www/html 获取文件,因此您可以通过 2 种方式找到此问题:

    1. 上传默认路径的文件
    2. 更改 Nginx 默认路径

    上传默认路径下的文件:

    • 1st删除/var/www/下的html文件夹
    • 第二次上传你的 laravel 文件到 /var/www/
    • 第三次将你的 laravel 项目 public 文件夹重命名为 html
    • 现在重启 nginx 并访问你的 ip

    更改 Nginx 默认路径

    • 打开默认文件
    sudo nano /etc/nginx/sites-enabled/default
    
    • 找到 root /var/www/html 并将 /var/www/html 替换为您的路径
    • 重启nginx,然后访问你的IP

    【讨论】:

      猜你喜欢
      • 2015-04-26
      • 2019-03-31
      • 1970-01-01
      • 2018-12-02
      • 1970-01-01
      • 2018-06-04
      • 1970-01-01
      • 2020-01-18
      • 2012-02-10
      相关资源
      最近更新 更多