【问题标题】:Virtual hosts not working properly in ubuntu LAMP stack虚拟主机在 ubuntu LAMP 堆栈中无法正常工作
【发布时间】:2021-08-21 05:17:30
【问题描述】:

我通过以下方式创建了虚拟主机:

  1. 创建 laravel.test.conf 为
 - cd /etc/apache2/sites-available
 - sudo nano laravel.test.conf
  1. 然后将laravel.test.conf更新为
<VirtualHost *:80>

    ServerName laravel.test
    ServerAlias www.laravel.test
    ServerAdmin admin@laravel.test

    DocumentRoot /var/www/laravel/public
    <Directory /var/www/laravel/public/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>
  1. 运行命令:sudo a2ensite laravel.test

  2. 提供的权限:

sudo chown -R www-data: /var/www/laravel
sudo chown -R $USER:$USER /var/www/laravel
sudo chmod -R 755 /var/www
  1. etc/hosts 上添加了站点名称
127.0.0.1 laravel.test www.laravel.test
  1. 重新加载 apache sudo systemctl reload apache2

  2. 运行 configtest sudo apachectl configtest 并收到 Syntax Ok

  3. 重启apache服务器sudo systemctl restart apache2

现在,当我点击larave.test 时,它会成功加载网站,但是当我尝试点击任何其他路线时,它会返回404 错误,如图所示。

这个应用程序是新安装的带有laravel breeze 的 laravel 应用程序,所以我非常有信心有一条有效的路线。最重要的是,如果是 laravel,错误,它会在应用级别记录它,并且 404 页面会有不同的 UI。

我已经检查了laravel/storage/logs 上的错误日志以及var/log/apache2/error.log 上的 apache2 日志,但是这两个日志文件都是空的。

【问题讨论】:

    标签: php apache virtualhost lamp


    【解决方案1】:

    确保您的 rewrite 模组已启用。

    或者直接在终端运行

    $ sudo a2enmod rewrite
    
    $ sudo systemctl reload apache2
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-12
      • 2016-02-23
      • 1970-01-01
      • 2015-08-03
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      • 2019-12-04
      相关资源
      最近更新 更多