在CentOS下部署Laravel需要注意以下几个关键步骤和事项:
安装必要的软件和依赖:
sudo yum update -y
sudo yum install php php-mysqlnd php-pdo php-mbstring php-xml php-pear php-bcmath php-gd php-curl php-zip
。curl -sS https://getcomposer.org/installer | php && mv composer.phar /usr/local/bin/composer
。sudo yum install nginx
,并配置相应的虚拟主机。配置PHP:
/etc/php.ini
),根据项目需求调整相关设置,例如内存限制、上传文件大小等。设置文件权限:
storage
和bootstrap/cache
目录可写:sudo chown -R nginx:nginx /path/to/your/laravel/project/storage
sudo chown -R nginx:nginx /path/to/your/laravel/project/bootstrap/cache
sudo chmod -R 755 /path/to/your/laravel/project/storage
sudo chmod -R 755 /path/to/your/laravel/project/bootstrap/cache
配置Web服务器:
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; mod_rewrite";
add_header X-Content-Type-Options "nosniff";
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
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;
}
sudo a2enmod rewrite
<VirtualHost *:80>
ServerName your_domain
DocumentRoot /path/to/your/laravel/project/public
<Directory /path/to/your/laravel/project/public>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
配置数据库:
.env
文件中的数据库连接信息更新为新创建的数据库。php artisan migrate
php artisan queue:work
设置应用环境:
.env.example
文件并重命名为.env
,然后编辑.env
文件,配置数据库连接信息和其他相关设置。php artisan key:generate
安全和优化:
通过以上步骤和注意事项,你可以在CentOS上成功部署Laravel应用,并确保其性能和安全性。如果在配置过程中遇到具体问题,可以根据错误信息进行排查,或者查阅Laravel官方文档寻求帮助。