linux

Laravel在Linux上如何配置环境

小樊
41
2025-08-03 08:37:59
栏目: 智能运维

在Linux上配置Laravel环境,你需要遵循以下步骤:

  1. 安装Composer(如果尚未安装): Laravel依赖于Composer来管理其依赖关系。访问https://getcomposer.org/download/ 并按照说明进行安装。

  2. 安装Nginx或Apache Web服务器(如果尚未安装): 你可以选择使用Nginx或Apache作为你的Web服务器。以下是在Ubuntu上安装它们的命令:

    对于Nginx:

    sudo apt update
    sudo apt install nginx
    

    对于Apache:

    sudo apt update
    sudo apt install apache2
    
  3. 安装PHP(如果尚未安装): Laravel需要PHP 7.3或更高版本。你可以使用以下命令安装PHP及其扩展:

    sudo apt update
    sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath
    
  4. 设置文件权限: Laravel需要对其存储目录具有读写权限。确保storagebootstrap/cache目录可写:

    sudo chown -R www-data:www-data /path/to/your/laravel/project
    sudo chmod -R 755 /path/to/your/laravel/project
    sudo chmod -R 777 /path/to/your/laravel/project/storage
    sudo chmod -R 777 /path/to/your/laravel/project/bootstrap/cache
    
  5. 配置Web服务器: 对于Nginx,在/etc/nginx/sites-available目录下创建一个新的配置文件,例如yourdomain.com,并添加以下内容:

    server {
        listen 80;
        server_name yourdomain.com;
        root /path/to/your/laravel/project/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/php7.4-fpm.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
            include fastcgi_params;
        }
    
        location ~ /\.(?!well-known).* {
            deny all;
        }
    }
    

    然后创建一个符号链接到sites-enabled目录:

    sudo ln -s /etc/nginx/sites-available/yourdomain.com /etc/nginx/sites-enabled
    

    对于Apache,在/etc/apache2/sites-available目录下创建一个新的配置文件,例如yourdomain.com.conf,并添加以下内容:

    <VirtualHost *:80>
        ServerName yourdomain.com
        ServerAdmin webmaster@localhost
        DocumentRoot /path/to/your/laravel/project/public
    
        <Directory /path/to/your/laravel/project/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>
    

    然后启用站点并重启Apache:

    sudo a2ensite yourdomain.com.conf
    sudo systemctl restart apache2
    
  6. 配置数据库: 在.env文件中配置数据库连接信息:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=your_database_name
    DB_USERNAME=your_database_user
    DB_PASSWORD=your_database_password
    
  7. 运行Laravel项目: 在项目根目录下运行以下命令以安装依赖项并生成应用密钥:

    composer install
    php artisan key:generate
    

    然后运行以下命令以优化Laravel应用程序:

    php artisan optimize
    

现在,你应该可以在浏览器中访问你的Laravel应用程序了。如果遇到任何问题,请检查Web服务器和Laravel的日志以获取更多信息。

0
看了该问题的人还看了