服务器测评网
我们一直在努力

lnmp虚拟机修改后如何生效?配置文件路径在哪?

在服务器管理中,LNMP(Linux+Nginx+MySQL+PHP)环境因其高性能和稳定性被广泛应用,当需要修改虚拟机配置时,通常涉及对Nginx虚拟主机、MySQL数据库及PHP配置的调整,以下将从虚拟主机配置、数据库优化、PHP参数调整及安全加固四个方面,详细阐述LNMP环境下虚拟机修改的操作步骤与注意事项。

lnmp虚拟机修改后如何生效?配置文件路径在哪?

Nginx虚拟主机配置修改

Nginx的虚拟主机配置文件通常位于/usr/local/nginx/conf/vhost/目录下,以.conf为后缀,修改虚拟主机需重点关注域名绑定、目录权限及重写规则。

基础配置调整

以修改域名example.com的配置为例,首先编辑对应配置文件,使用vimnano工具打开:

vim /usr/local/nginx/conf/vhost/example.com.conf

核心参数修改包括:

  • 根目录:调整root指令指向新的网站目录,如/data/www/example
  • 域名绑定:在server_name中添加或删除域名,支持通配符(如*.example.com)或泛域名(_);
  • 日志路径:修改access_logerror_log至指定目录,确保目录权限正确。

重写规则与伪静态

若需修改URL重写规则,可在server块中调整location指令,将WordPress的伪静态规则修改为:

location / {  
    try_files $uri $uri/ /index.php?$args;  
}  

修改后需执行nginx -t检查语法,并使用nginx -s reload重新加载配置。

目录权限与安全

为确保安全性,需限制目录执行权限,禁止上传目录执行PHP文件:

location ~* ^/uploads/.*\.(php|php5)$ {  
    deny all;  
}  

MySQL数据库配置优化

虚拟机的数据库修改主要涉及用户权限、存储引擎及性能参数调整。

用户与权限管理

登录MySQL后,使用GRANT语句修改用户权限,为用户db_user赋予example_db数据库的全部权限,并限制其只能通过特定IP访问:

lnmp虚拟机修改后如何生效?配置文件路径在哪?

GRANT ALL PRIVILEGES ON example_db.* TO 'db_user'@'192.168.1.100' IDENTIFIED BY 'new_password';  
FLUSH PRIVILEGES;  

若需删除用户,可执行DROP USER 'db_user'@'localhost';

存储引擎与字符集

修改数据库表的存储引擎,如将MyISAM转换为InnoDB:

ALTER TABLE table_name ENGINE=InnoDB;  

调整字符集可在创建数据库时指定,如:

CREATE DATABASE example_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;  

性能参数调优

通过修改MySQL配置文件/etc/my.cnf优化性能,关键参数包括:

  • innodb_buffer_pool_size:建议设置为物理内存的50%-70%;
  • max_connections:根据并发需求调整,默认151;
  • query_cache_size:若查询缓存频繁命中可适当增大,否则建议关闭。

修改后需重启MySQL服务:systemctl restart mysqld

PHP配置参数调整

PHP的配置文件php.ini通常位于/usr/local/php/etc//etc/php/7.x/fpm/,修改后需重启PHP-FPM服务生效。

常用参数修改

  • 上传文件限制:调整upload_max_filesizepost_max_size,确保两者一致,如设置为100M
  • 执行超时时间:修改max_execution_time300(秒);
  • 时区设置:在php.ini中取消注释date.timezone = Asia/Shanghai

扩展模块管理

若需启用或禁用PHP扩展,可通过extension=模块名.so控制,启用Redis扩展:

extension=redis.so  

修改后执行systemctl restart php-fpm重启服务。

lnmp虚拟机修改后如何生效?配置文件路径在哪?

PHP-FPM优化

调整PHP-FPM配置文件www.conf中的进程池参数:

  • pm.max_children:最大子进程数,根据服务器内存计算(如内存为2G,可设为50);
  • pm.start_servers:启动时进程数,建议为max_children的20%-30%;
  • pm.max_requests:单进程处理请求数,避免内存泄漏,可设为1000。

安全加固与日志管理

防火墙与端口设置

通过firewall-cmd限制访问端口,仅开放必要端口(如80、443、22):

firewall-cmd --permanent --add-service=http  
firewall-cmd --permanent --add-service=https  
firewall-cmd --reload  

日志分析与监控

定期分析Nginx和MySQL日志,可通过logrotate工具管理日志轮转,避免单个日志文件过大,配置Nginx日志每日轮转:

cat /etc/logrotate.d/nginx  
```  如下:  

/var/log/nginx/*.log {
daily
missingok
rotate 52
compress
delaycompress
notifempty
create 644 nginx nginx
}


#### 3. 系统更新与漏洞修复  
定期执行系统更新,修复LNMP组件的安全漏洞:  
```bash
yum update -y  # CentOS系统  
apt update && apt upgrade -y  # Ubuntu系统  

LNMP环境下虚拟机的修改需兼顾功能实现与安全性,重点围绕Nginx虚拟主机配置、MySQL权限管理、PHP参数调优及安全加固展开,操作前建议备份配置文件,修改后通过日志监控服务状态,确保系统稳定运行,合理的配置调整不仅能提升服务器性能,还能有效降低安全风险。

赞(0)
未经允许不得转载:好主机测评网 » lnmp虚拟机修改后如何生效?配置文件路径在哪?