记录一次 LNMP 环境搭建到 Https 配置
之前一直习惯使用 LAMP环境,更多的使用Apache去作为自己的服务器。今天折腾了一下LNMP,以及升级https,因为没什么含金量,仅作为我的一个记录笔记吧。
1.搭建了LNMP环境
sudo apt-get update #安装nginx sudo apt-get install nginx #安装 php7.2以及php7.2-fpm sudo apt-get install php7.2 php7.2-fpm #配置修改 sudo vim /etc/nginx/sites-avaiable/default 增加以下配置内容  #修改 www.conf配置文件 /etc/php/7.2/fpm/pool.d/www.conf sudo vim /etc/php/7.2/fpm/pool.d/www.conf #把 listen = /run/php/php7.2-fpm.sock #修改为 listen = /var/run/php/php7.2-fpm.sock #修改 php.ini配置文件 sudo vim /etc/php/7.2/fpm/php.ini #将该文件的 cgi.fix_pathinfo = 1 #更改为 cgi.fix_pathinfo = 0 #修改 fastcgi_params配置文件 sudo vim /etc/nginx/fastcgi_params #在该文件的组后一行假如代码 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name #接下来我们可以检验一下装的是否正确,在根目录下新建一个 test.php 文件 sudo vim /var/www/html/test.php #执行 localhost/test.php如果可以正确解析则OK。 #安装Mysql sudo apt-get install mysql-server mysql-client php7.2-mysql #安装完成后我们可以使用PDO来检测一下 sudo vim /var/www/html/mysql.php <?php try{ $pdo = new PDO("mysql:host=localhost;dbName=mysql;",'root','root'); var_dump($pdo); }catch(Exception $e){ echo $e->getMessage(); } ?> #然后我们可以在浏览器访问 localhost/mysql.php
【友情提醒】
1,先安装 nginx然后安装php,因为在安装php时候会自动安装apache
2,可以使用 sudo apt-get auroremove 软件名 来卸载,然后重新安装。
- 安装 phpmyadmin
sudo apt-get update
sudo apt-get install phpmyadmin
#然后按照提示内容默认进行即可。
#建立 /var/www/html/下的软连接
sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
#然后重启nginx
sudo service nginx restart
#访问 localhost/phpmyadmin/index.php 看是否正确
- 配置HTTPS
1,首先在我所在的服务器申请免费的 ssl证书,通过一系列认证之类的乱七八糟操作之后呢就开始下载证书了。
就是这两个文件
然后我在 /etc/nginx下新建了ssl文件夹用于存放证书
```
server {
listen 443 ssl;
listen [::]:443;
root /home/ubuntu/CODE/xxxx/public/;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1;mode=block";
add_header X-Content-Type-Options "nosniff";
charset utf-8;
ssl on;
ssl_certificate /etc/nginx/ssl/public.pem;
ssl_certificate_key /etc/nginx/ssl/private.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
index index.html index.htm index.php;
server_name xxx.com www.xxx.com;
access_log /var/log/nginx/xx.access.log;
error_log /var/log/nginx/xx.error.log;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
}
}
server{
listen 80;
server_name fantasycode.top www.fantasycode.top;
rewrite ^(.*) https://$host$1 permanent;
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: