在Linux系统上管理Laravel资源,通常涉及以下几个方面:
首先,确保你的Linux系统已经安装了以下软件:
安装PHP和扩展:
sudo apt update
sudo apt install php php-cli php-fpm php-json php-common php-mysql php-mbstring php-xml php-zip
安装Composer:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
安装数据库:
sudo apt install mysql-server
sudo mysql_secure_installation
sudo apt install postgresql postgresql-contrib
安装Web服务器:
sudo apt install nginx
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/your-site
sudo ln -s /etc/nginx/sites-available/your-site /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl restart nginx
sudo apt install apache2 libapache2-mod-php
sudo a2ensite default.conf
sudo systemctl restart apache2
克隆项目:
git clone https://github.com/your-username/your-laravel-project.git
cd your-laravel-project
安装依赖:
composer install
配置环境变量:
编辑 .env
文件,设置数据库连接、APP_URL等信息。
生成应用密钥:
php artisan key:generate
运行迁移和种子(如果有):
php artisan migrate
php artisan db:seed
Laravel对文件和目录权限有特定的要求。通常,你需要给予 storage
和 bootstrap/cache
目录写权限。
sudo chown -R www-data:www-data storage bootstrap/cache
sudo chmod -R 775 storage bootstrap/cache
Laravel使用符号链接来管理一些目录,确保这些符号链接指向正确的位置。
sudo ln -sf storage/app/public public/storage
sudo ln -sf storage/framework/views public/views
server {
listen 80;
server_name your-domain.com;
root /path/to/your-laravel-project/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.html index.htm 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; # 根据你的PHP版本调整
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
<VirtualHost *:80>
ServerName your-domain.com
DocumentRoot /path/to/your-laravel-project/public
<Directory /path/to/your-laravel-project/public>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
确保你的Web服务器和PHP-FPM服务正在运行。
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start php7.4-fpm
sudo systemctl enable php7.4-fpm
如果你在Laravel项目中使用了Node.js,可以使用PM2来管理Node.js进程。
sudo npm install pm2 -g
pm2 start server.js
通过以上步骤,你应该能够在Linux系统上成功管理和运行Laravel项目。如果有任何问题,请随时提问!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。