一、配置Nginx开机自启动
1、Nginx可执行文件路径
/usr/sbin/nginx
2、Nginx配置文件路径
/etc/nginx/nginx.conf
3、创建Nginx服务控制脚本
sudo vi /etc/systemd/system/nginx.service
如下代码:
[Unit]
Description=The nginx HTTP server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -c /etc/nginx/nginx.conf
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/usr/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target
4、重新加载服务文件
sudo systemctl daemon-reload
5、设置Nginx自启动
sudo systemctl enable nginx.service
6、重启系统,验证Nginx是否自启动成功
sudo reboot
二、修改Nginx监听端口
1、打开Nginx配置文件
sudo vi /etc/nginx/nginx.conf
2、修改监听端口号
http {
...
server {
listen 80;
...
}
...
}
3、保存并退出
4、重新加载Nginx服务
sudo systemctl reload nginx.service
5、验证端口是否已修改
netstat -tlnp | grep nginx
三、设置Nginx虚拟主机
1、在Nginx配置文件中创建新的虚拟主机
sudo vi /etc/nginx/nginx.conf
2、添加以下代码
http {
...
server {
listen 80;
server_name example.com;
location / {
root /var/www/example.com;
index index.html;
}
}
...
}
3、创建虚拟主机路径
sudo mkdir /var/www/example.com
4、将网站内容放入虚拟主机路径
5、重启Nginx服务
sudo systemctl restart nginx.service
6、在本地Hosts中添加域名
sudo vi /etc/hosts
添加以下内容
127.0.0.1 example.com
7、使用浏览器访问新建的虚拟主机
四、Nginx HTTPS配置
1、生成SSL证书和私钥
sudo openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
2、输入证书信息,并按照提示输入密码和证书相关信息
3、生成自签名SSL证书
sudo openssl x509 -req -days 365 -in example.com.csr -signkey example.com.key -out example.com.crt
4、将证书和私钥放入对应路径
sudo mkdir /etc/nginx/ssl
sudo mv example.com.key /etc/nginx/ssl/
sudo mv example.com.crt /etc/nginx/ssl/
5、创建新的虚拟主机
sudo vi /etc/nginx/conf.d/https.conf
添加以下代码
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
location / {
root /var/www/example.com;
index index.html;
}
}
6、重启Nginx服务
sudo systemctl restart nginx.service
7、在本地Hosts中添加域名
sudo vi /etc/hosts
添加以下内容
127.0.0.1 example.com
8、使用浏览器访问已启用HTTPS的虚拟主机