使用LAMP(Linux, Apache, MySQL, PHP)环境部署应用是一个相对直接的过程,但需要确保每个组件都正确安装和配置。以下是详细的步骤:
sudo apt update
sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql
sudo yum install httpd mariadb-server mariadb php php-mysqlnd
sudo systemctl start httpd mariadb
sudo systemctl enable httpd mariadb
sudo ufw allow 'Apache Full'
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
sudo mysql_secure_installation
mysql -u root -p
CREATE DATABASE appdb;
CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON appdb.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
通常将应用代码放在 /var/www/html/
或创建虚拟主机目录。
sudo mkdir -p /var/www/yourapp
sudo chown -R $USER:$USER /var/www/yourapp
编辑 /etc/apache2/sites-available/yourapp.conf
文件,示例配置如下:
<VirtualHost *:80>
ServerName yourdomain.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/yourapp
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/yourapp>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
启用配置:
sudo a2ensite yourapp.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
sudo chown -R www-data:www-data /var/www/yourapp
sudo find /var/www/yourapp -type d -exec chmod 755 {} \;
sudo find /var/www/yourapp -type f -exec chmod 644 {} \;
编辑应用的配置文件(如 config.php
):
<?php
define('DB_HOST', 'localhost');
define('DB_USER', 'appuser');
define('DB_PASS', 'password');
define('DB_NAME', 'appdb');
?>
使用Let’s Encrypt:
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d yourdomain.com
编辑 /etc/apache2/apache2.conf
文件,确保有:
Options -Indexes
sudo a2enmod cache
sudo a2enmod expires
sudo a2enmod headers
sudo apt install php-opcache
sudo nano /etc/php/7.x/apache2/php.ini
找到并修改:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
通过以上步骤,您可以在Linux系统上成功部署LAMP环境,并部署您的应用。确保在每一步都仔细检查配置,以保证系统的安全性和稳定性。