宝塔配置nginx + php,并解决宝塔888端口phpmyadmin无法访问的问题,绝对可用

情景:
可能是我前面部署有其他项目吧,用了nginx占用了80端口,导致后面安装php和phpmyadmin的时候,打开phpmyadmin都是无法访问,我用的是华为云,表示安全组和防火墙都放行了888端口,都不行.在网上也找了很多,但都行不同,所以就只能自己想方法了,跟着我的步骤,肯定没错.

环境: (请安装好以下版本的环境)
宝塔面板 + Linux Centos7.x + nginx 1.16.1 + php7.4 + MySQL 5.7.30 + phpMyAdmin 5.0

那么就开始吧!
1.编辑 /www/server/php/74/etc/php.ini
将php.ini里的cgi.fix_pathinfo设置为0,不然会有漏洞

3.首先说下php-fpm有两种listen方式,一种是通过端口来操作,一种是sock文件。sock性能比较好也是默认的方式,所以我就用sock来做例子

4.在/www/wwwroot目录下新建一个目录(我以ceshi-php名为例子)
然后在ceshi-php下新建一个文件名为info.php,并编辑

<?php phpinfo(); ?>

5.编辑nginx配置(我的是配置了SSL的,但你也可以直接ip加端口
有域名和SSL的配置

server
    {
        listen 80;
        server_name '你的域名';
        rewrite ^(.*)$ https://$host$1 permanent;
        #error_page   404   /404.html;
    #AUTH_START
    auth_basic "Authorization";
    auth_basic_user_file /www/server/pass/phpmyadmin.pass;
    #AUTH_END
        location / {
         index index.php index.html index.htm;
        }
    }
server
    {
         listen 443 ssl;
         server_name '你的域名';
         index index.php index.html index.htm;
         root /www/wwwroot/ceshi-php;
         ssl_certificate '.pem证书配置文件';
         ssl_certificate_key '.key证书配置文件';
         location ~ \.php$ {
            fastcgi_pass unix:/tmp/php-cgi-74.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
         }
    }

ip加端口的配置

server
    {
         listen '端口';
         index index.php index.html index.htm;
         root /www/wwwroot/ceshi-php;
         location ~ \.php$ {
            fastcgi_pass unix:/tmp/php-cgi-74.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
         }
    }

6.放行端口
6.1. 在你购买服务器的服务商官网里安全组打开这个端口号
6.2. 并在宝塔的安全里放行这个端口
如图(宝塔的安全):
在这里插入图片描述
7.重启下nginx

8.在外部浏览器输入你的服务器’ip:端口/info.php’或’域名/info.php’
效果如下则成功:
在这里插入图片描述
接下来就是配置phpmyadmin了
9.在宝塔的文件里去到/www/server/phpmyadmin目录,查看phpmyadmin的权限是否为755,可能是777,就把它改成755
如图:
在这里插入图片描述
10. 新建一个数据库
如图:
在这里插入图片描述
11. 然后在nginx加入如下配置(这里就以ip+端口为例子了)

server
    {
         listen '你的端口,注意不要和前面的冲突了';
         index index.php index.html index.htm;
         root /www/server/phpmyadmin/phpmyadmin;
         location ~ \.php$ {
            fastcgi_pass unix:/tmp/php-cgi-74.sock;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi_params;
         }
    }

12.在外部浏览器输入你的ip:端口
效果如图(则成功):
在这里插入图片描述
13.输入你刚创建数据库时的账号和密码,则可进数据库
效果如图:
在这里插入图片描述
最后: 以上就是我折腾了的成功结果,如果大家有更好的方法或者又不懂的,按着步骤不成功的可以在下方的评论留言,因为平时工作比较忙,但有时间我还是会上来博客看看的

在使用Nginx和Keepalived配置多个站点的共用80端口时,可以采用以下步骤解决: 1. 安装配置Nginx:首先,需确保已成功安装配置Nginx。在Nginx配置文件中(通常是/etc/nginx/nginx.conf),添加多个server块来定义每个站点的配置。 2. 配置不同的域名和路径:在每个server块中,指定不同的域名和路径,以便Nginx能够根据请求的URL来将请求转发到正确的站点。例如,可以在一个server块中配置www.example1.com,而在另一个server块中配置www.example2.com。 3. 修改默认监听端口:默认情况下,Nginx监听的是80端口。而为了共用80端口,需要将其中一个站点的监听端口修改为其他端口(例如81),以确保端口不冲突。 4. 配置Keepalived:Keepalived是一个用于实现高可用性和负载均衡的软件,可确保无论某个节点是否故障,站点仍然可用。通过配置Keepalived,可将多个Nginx节点绑定在一起,并以虚拟IP(VIP)的形式对外提供服务。 5. 设置共享的80端口:在Keepalived的配置文件中(通常是/etc/keepalived/keepalived.conf),需要将虚拟IP绑定到80端口。这样,当请求发送到共享80端口时,Keepalived将通过负载均衡算法将请求转发到Nginx节点中的一个。 通过以上步骤配置Nginx和Keepalived,就可以实现多个站点共用80端口的需求了。这样,无论用户是访问www.example1.com还是www.example2.com,在接收到请求后,Nginx和Keepalived将确保将请求转发到正确的站点上,实现站点的共享端口服务。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值