在搭建个人博客或企业网站时,使用Nginx作为服务器软件,并结合SSL加密、PHP解析以及WordPress伪静态规则,可以大大提升网站的安全性和用户体验。下面是一段简单而完整的配置代码,帮助你在Nginx下实现这一目标。
一、安装Nginx和PHP
首先,确保你的服务器上已经安装了Nginx和PHP。如果未安装,可以使用以下命令进行安装(以Ubuntu为例):
sudo apt update
sudo apt install nginx php-fpm php-mysql
二、获取SSL证书
为了启用HTTPS,你需要一个SSL证书。可以从Let's Encrypt等免费证书颁发机构获取。获取证书后,将证书文件(如fullchain.pem
)和私钥文件(如privkey.pem
)放置在服务器上的安全位置。
三、配置Nginx
接下来,编辑Nginx的配置文件(通常位于/etc/nginx/sites-available/default
或自定义站点配置文件中),添加以下内容:
server {
listen 80;
server_name yourdomain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name yourdomain.com;
**ssl_certificate /path/to/fullchain.pem;
ssl_certificate_key /path/to/privkey.pem;**
root /var/www/html/yourdomain.com;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本调整
}
**location /wp-admin {
rewrite ^/wp-admin$ $scheme://$host$uri/ permanent;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}**
}
重点内容:
ssl_certificate
和ssl_certificate_key
:指定SSL证书和私钥文件的路径。try_files $uri $uri/ /index.php?$args;
:这是WordPress伪静态规则的核心,确保所有请求都被正确转发给WordPress处理。- 针对
/wp-admin
的重写规则:优化WordPress后台访问。 - 静态文件缓存:为常见的静态文件类型设置缓存,提升网站加载速度。
四、测试并重启Nginx
完成配置后,使用以下命令测试Nginx配置是否正确:
sudo nginx -t
如果测试通过,重启Nginx以使配置生效:
sudo systemctl restart nginx
至此,你已经成功在Nginx下部署了SSL加密、支持PHP解析以及WordPress伪静态规则的网站。这样的配置不仅提升了网站的安全性,还优化了访问速度和用户体验。