当前位置:首页 > 技术文章 > 正文内容

如何在FreeBSD中安装Nginx,MySQL,PHP(FEMP)

arlanguage3个月前 (01-20)技术文章31

本文介绍如何在FreeBSD 13系统中安装Nginx、MySQL、和PHP服务。

系统环境

FreeBSD 13.0-RELEASE

更新系统

在安装任何软件之前更新系统是一个好习惯,以便检查系统更新:

root@freebsd:~ # freebsd-update fetch
root@freebsd:~ # freebsd-update install

安装Nginx

使用pkg包管理器安装nginx:

root@freebsd:~ # pkg install -y nginx

启动nginx

要在系统启动时运行 Nginx服务,需要在/etc/rc.conf配置文件的末尾添加一行nginx_enable="yes"。运行下面的命令,自动将nginx_enable="yes"附加到rc.conf文件中,然后启动服务:

root@freebsd:~ # sysrc nginx_enable=yes
root@freebsd:~ # service nginx start
Performing sanity check on nginx configuration:
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
Starting nginx.

nginx相关配置

nginx的配置文件在/usr/local/etc/nginx目录中,名称为nginx.conf,可以使用vim编辑器打开配置文件。

root@freebsd:~ # vim /usr/local/etc/nginx/nginx.conf

user  www;
worker_processes  1;
error_log  /var/log/nginx/error.log info;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    access_log /var/log/nginx/access.log;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   /usr/local/www/nginx;
            index  index.php index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /usr/local/www/nginx-dist;
        }
        location ~ \.php$ {
            root           /usr/local/www/nginx;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
}

安装MySQL

使用下面命令来安装mysql:

root@freebsd:~ # pkg install mysql80-server mysql80-client

要在系统启动时启用它,使用下面命令将mysql_enable=yes添加到rc.conf文件中:

root@freebsd:~ # sysrc mysql_enable=yes


启动mysql:

root@freebsd:~ # service mysql-server start
Starting mysql.

安装PHP

PHP 是一种服务器端语言,与 HTML 结合使用以创建动态 Web 内容。它还连接到 MySQL 数据库以检索和上传内容。下面命令来安装php8.0和常用的模块。

root@freebsd:~ # pkg install -y php80 php80-mysqli php80-mbstring php80-zlib php80-curl php80-gd php80-json

配置php-fpm

下面将php.ini-production配置文件复制一份,改名为php.ini:

root@freebsd:/usr/local/etc # cp /usr/local/etc/php.ini{-production,}

打开文件/usr/local/etc/php.ini并取消注释;cgi.fix_pathinfo=1,将其值更改为0

root@freebsd:~ # cat /usr/local/etc/php.ini | grep '^cgi.fix_pathinfo'
cgi.fix_pathinfo=0

设置php-fpm开机启动:

root@freebsd:~ # sysrc php_fpm_enable=yes
php_fpm_enable:  -> yes
root@freebsd:~ # service php-fpm start
Performing sanity check on php-fpm configuration:
[03-Jun-2021 18:51:27] NOTICE: configuration file /usr/local/etc/php-fpm.conf test is successful

Starting php_fpm.
root@freebsd:~ # 

访问php测试页

/usr/local/www/nginx目录下创建一个php测试文件,名为:test.php:

root@freebsd:~ # vim /usr/local/www/nginx/test.php 


浏览器访问一下查看是否可看到测试页:


测试没问题了,可以从服务器中删除测试文件,以避免将有关服务器的信息暴露。

root@freebsd:~ # rm -rf /usr/local/www/nginx/test.php 

总结

目前位置已经在 FreeBSD 系统上安装了 Nginx、MySQL 和 PHP!

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/985.html

标签: nginx 多php
分享给朋友:

“如何在FreeBSD中安装Nginx,MySQL,PHP(FEMP)” 的相关文章

Nginx动态请求如何处理?

动态请求通常指的是那些需要服务器端生成内容的请求,例如,当用户访问一个包含动态内容的网页时,服务器需要执行脚本(如PHP、Java、Ruby等)来生成HTML、CSS、JavaScript等文件。以下是在Nginx中处理动态请求的一般步骤:配置Nginx:在Nginx的配置文件中,使用locatio...

Nginx高级篇:从原理到实战,彻底搞懂Nginx

推荐阅读:2020年后想跳槽?MQ、ZK、Nginx、Kafk等分布式技术你都掌握了?手撕分布式技术:限流、通讯、缓存,全部一锅端走送给你惨败阿里,洒泪复习25天,我还能抓住2019的小尾巴上岸网易?微服务架构之春招总结:SpringCloud、Docker、Dubbo与SpringBoot通过配置...

在 Ubuntu 或 Debian 系统上安装以及配置 nginx-1.20.1.tar.gz

安装和配置 Nginx 的步骤如下:下载 Nginx:1、首先,你需要从 Nginx 的官方网站下载源代码包。在你的服务器上执行以下命令,下载 Nginx 1.20.1 版本的源代码包:wget http://nginx.org/download/nginx-1.20.1.tar.gz2、解压源代码...

技巧:PHP版本怎样隐藏在Linux服务器

通常情况下,大多数安装web服务器软件的默认设置存在信息泄露,这些软件其中之一就是PHP。PHP是如今最流行的服务端html嵌入式语言之一。而在如今这个充满挑战的时代,有许多黑客会尝试发现你服务端的漏洞。因此,ehowstuff网站一篇简单描述如何在Linux服务器中隐藏PHP信息值得关注。(图片来...

面试常问知识点:Nginx设置代理的一个注意点

前几天,重启了下Nginx代理服务,发现报错了,以下是本次的思考。1:先解决问题查看Nginx错误日志:40 SSL_do_handshake() failed (SSL: error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handsha...

轻量级日志平台 Loki 2.3 发布:15 倍最近数据查询速度提升

一、前言Loki v2.3.0 中添加了出色的新功能,进行了 bug 修复。除此之外,性能也得到了提升。二、自定义保留规则Loki 中的保留对于集群来说一直是全局的,并推迟到底层对象存储。Loki 现在可以通过 Compactor 组件处理保留。 你可以配置每个租户和每个流的保留时间。 这些不同的保...