局域网中搭建LNMP环境实现虚拟主机配置
海外云服务器 40个地区可选 亚太云服务器 香港 日本 韩国
云虚拟主机 个人和企业网站的理想选择 俄罗斯电商外贸虚拟主机 赠送SSL证书
在局域网内搭建LNMP(Linux、Nginx、MySQL、PHP)环境并配置虚拟主机,可实现多网站共存于同一服务器上,首先安装各组件,然后通过Nginx配置文件设定不同域名指向各自网站目录,最后重启服务生效,此方法利于资源高效利用与管理。
随着互联网技术的迅猛发展,越来越多的企业和个人开始构建自己的网站或应用服务,对于那些希望在有限预算内获得高性能、高灵活性解决方案的人来说,在局域网内部署基于Linux、Nginx(或Apache)、MySQL和PHP/Perl/Python等开源软件组成的LNMP架构成为一个极具吸引力的选择,本文将详细介绍如何在一个小型局域网环境中设置这样一个LNMP服务器,并通过该服务器来托管多个虚拟主机。
准备工作
- 硬件要求:一台性能适中的PC或服务器作为主控机;确保有足够的存储空间以及足够的RAM来运行多个服务。
- 软件需求:
- Linux操作系统(推荐使用Ubuntu Server版本)
- Nginx Web服务器
- MySQL数据库管理系统
- PHP语言解释器
- 其他可能需要的开发工具如Git、Composer等
安装基础环境
-
安装Linux系统 选择一个稳定且社区支持良好的Linux发行版进行安装,这里以Ubuntu为例,可以按照官方指南完成系统的初步安装配置。
-
更新系统并安装必要的软件包
sudo apt update sudo apt upgrade sudo apt install nginx mysql-server php-fpm git
-
配置防火墙 开放HTTP(80)、HTTPS(443)端口允许外部访问。
sudo ufw allow 'Nginx Full'
配置Nginx与PHP-FPM
-
编辑Nginx配置文件 创建一个新的站点配置文件,例如
/etc/nginx/sites-available/example.com,然后链接到sites-enabled目录下。server { listen 80; server_name example.com www.example.com; root /var/www/html/example.com; index index.php index.html; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.4-fpm.sock; # 根据实际情况调整 } } -
启用新站点并测试配置
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx
设置MySQL数据库
-
安全初始化MySQL
sudo mysql_secure_installation
按照提示设置root密码以及其他安全性选项。
-
创建数据库及用户 登录MySQL后,为每个虚拟主机创建独立的数据库和具有相应权限的用户。
CREATE DATABASE example_db; GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; EXIT;
部署Web应用程序
根据项目需求,可以通过Git克隆代码仓库至指定目录,或者手动上传相关文件到/var/www/html/example.com路径下,如果涉及到数据库操作,请记得先导入数据库结构和数据。
管理多个虚拟主机
为了方便地在同一台服务器上托管多个不同的网站,可以通过重复上述步骤添加新的站点配置文件,并为每个站点分配不同的域名指向同一IP地址但不同端口,或者直接使用子域名方式区分。
维护与优化
- 定期检查日志文件(如
/var/log/nginx/error.log和/var/log/mysql/error.log),及时发现并解决问题。 - 考虑使用Let's Encrypt等免费SSL证书服务增强网站安全性。
- 根据实际访问量调整Nginx、PHP-FPM等工作进程数量以优化性能。
通过以上步骤,您就可以成功地在局域网内搭建起一个功能强大的LNMP平台,并轻松管理和扩展您的网络应用了,这不仅节省了成本,还给予了开发者极大的自由度去探索更多的可能性。 lnmp局域网虚拟主机


