真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

centos8如何安裝配置nginx-創(chuàng)新互聯(lián)

這篇文章給大家分享的是centos8安裝配置nginx的詳細(xì)安裝教程,相信大部分人都還不知道怎么安裝,為了讓大家學(xué)會(huì),給大家總結(jié)了以下內(nèi)容,話不多說,一起往下看吧。

創(chuàng)新互聯(lián)建站長期為上1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為歷城企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站制作,歷城網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

CentOS7與centOS8的抉擇

目前國內(nèi)各大云服務(wù)器的默認(rèn)centos 系統(tǒng)版本還是7,目前沒有centos配套支持,國外云服務(wù)器廠商默認(rèn)就是8,如vultr

centos8的性能提升,官網(wǎng)介紹的更清楚

安裝centos8 min版本,在我的系統(tǒng)上查看,發(fā)現(xiàn)nginx默認(rèn)是1.14

開發(fā)語言版本

  • Python 3.6

  • PHP 7.2

  • Ruby 2.5

  • Node.js 10

  • java::OpenJDK 11

數(shù)據(jù)庫版本

  • MySQL 8.0

  • MariaDB 10.3

  • PostgreSQL 10 and PostgreSQL 9.6

  • Redis 5.0

而我的服務(wù)器msyql是msyql5.6 php是php5.6 ,我是選擇重新來過一遍。


centos8 從零開始安裝nginx mysql php 系統(tǒng)默認(rèn)版本搭建php網(wǎng)站

centos8 安裝nginx

  • 安裝nginx


    yum install nginx php

  • 啟動(dòng)nginx

    systemctl start nginx.service

  • 查看nginx狀態(tài)

    systemctl status nginx


  • 設(shè)置nginx開機(jī)啟動(dòng)

    systemctl enable nginx.service

centos8 安裝php

  • 安裝php

  • yum install php

  • 安裝php拓展庫

  • yum install php-json php-xml php-mysqlnd php-mbstring php-common php-gd

  • 啟動(dòng)php

  • systemctl start php-fpm

  • 查看php版本

  • php -V

  • 設(shè)置php開機(jī)啟動(dòng)

  • systemctl enable php-fpm

centos8安裝mysql

  • 查看是否安裝MySQL

    rpm -qa | grep mysql

  • 下載安裝包文件

    wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

  • 安裝mysql-community-release-el7-5.noarch.rpm包

    rpm -ivh mysql-community-release-el7-5.noarch.rpm

  • 查看可用安裝包

    yum repolist all | grep mysql

  • 安裝mysql

    yum install mysql-server

  • 檢查mysql是否安裝成功。

    rpm -qa | grep mysql

  • 啟動(dòng) mysql 服務(wù)

    systemctl start mysqld.service


網(wǎng)站nginx selinux 文件權(quán)限配置

網(wǎng)站nginx配置

像我這種小水管網(wǎng)站,需要注意的就是,nginx 限流

大致配置如下

    # 1M能存儲(chǔ)16384個(gè)狀態(tài),rete的值必須為整數(shù),
    # 如果限制兩秒鐘一個(gè)請(qǐng)求,可以設(shè)置成30r/m ,其中$binary_remote_addr有時(shí)需要根據(jù)自己已有的log_format變量配置進(jìn)行替換
    limit_conn_zone $binary_remote_addr zone=perip:1m;
    limit_conn_zone $server_name zone=perserver:1m;
    #limit_req   zone=perip burst=10;
     # 限制客戶端并發(fā)連接數(shù)量為20, allow only one connection per an IP address at a time(每次). ;
    #是限制每個(gè)IP只能發(fā)起20連接 (addr 要跟 limit_conn_zone 的變量對(duì)應(yīng))
    # 表明以ip為key,來限制每個(gè)ip訪問lmit.html文件時(shí)候,最多只能有一個(gè)在線,否則其余的都要返回不可用。
    limit_conn perip 14;
    limit_conn perserver 10;
    limit_req_zone $binary_remote_addr zone=per_ip:1m rate=400r/s;
    limit_req_zone $server_name zone=per_server:10m rate=600r/s;
    limit_req zone=per_ip burst=300 nodelay;
    limit_req zone=per_server burst=500;

具體,推薦閱讀《Nginx下limit_req模塊burst參數(shù)超詳細(xì)解析》

nginx配置目錄結(jié)構(gòu)如下

centos8如何安裝配置nginx

這里把本站配置貼一下

nginx基本配置

nginx配置文件為HOCON,intellij編輯的,配置查看:《HOCON:nginx配置文件后綴conf是什么格式類型文件夾?intellij如何編輯》,其他編輯器應(yīng)該也有相應(yīng)插件。有個(gè)插件認(rèn)識(shí)代碼,編輯器起來應(yīng)該舒服些。

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /etc/nginx/modules/*.conf;

events {
    # essential for linux, optmized to serve many clients with each thread
      # Linux 關(guān)鍵配置,允許單個(gè)線程處理多個(gè)客戶端請(qǐng)求。
      use epoll;
      # Determines how many clients will be served by each worker process.
      # (Max clients = worker_connections * worker_processes)
      # "Max clients" is also limited by the number of socket connections available on the system (~64k)
      # 配置單個(gè) Nginx 單個(gè)進(jìn)程可服務(wù)的客戶端數(shù)量,(大值客戶端數(shù) = 單進(jìn)程連接數(shù) * 進(jìn)程數(shù) )
      # 大客戶端數(shù)同時(shí)也受操作系統(tǒng) socket 連接數(shù)的影響(大 64K )
      worker_connections 51200;

      #用來配置nginx服務(wù)器是否可能多地接收客戶端的連接請(qǐng)求,默認(rèn)值為off
      multi_accept on;
}
# http config
include /etc/nginx/http/default.conf;
#include /etc/nginx/http/http_web.conf;
nginx http配置
http {
################################ logs  #######################
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    # Buffer log writes to speed up IO, or disable them altogether
    # 將日志寫入高速 IO 存儲(chǔ)設(shè)備,或者直接關(guān)閉日志。
    # access_log /var/log/nginx/access.log main buffer=16k;
    access_log off;
    # only log critical errors 只記錄 critical 級(jí)別的錯(cuò)誤日志
    error_log /var/log/nginx/error.log crit;

################################  file  #######################
    # types
    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    charset UTF-8;
    # 只允許get post 請(qǐng)求
    add_header 'Access-Control-Allow-Methods' 'GET, POST';
    #隱藏掉nginx的版本號(hào)
    server_tokens off;
################################ 開啟gzip壓縮 相關(guān)配置 #######################
    gzip on;
    gzip_disable   "MSIE [1-6]\.";
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 4;
    gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
    gzip_vary on;
    gzip_proxied   expired no-cache no-store private auth;

    #  請(qǐng)求設(shè)置優(yōu)化配置 #######################
    tcp_nodelay         on;
    # sendfile() 不但能減少切換次數(shù)而且還能減少拷貝次數(shù)。
    sendfile            on;
    # 使緩沖區(qū)中的數(shù)據(jù)立即發(fā)送出去
    tcp_nopush          on;
    # 指定每個(gè) TCP 連接最多可以保持多長時(shí)間。Nginx 的默認(rèn)值是 75 秒,有些瀏覽器最多只保持 60 秒,所以可以設(shè)定為 60 秒
    # 配置連接 keep-alive 超時(shí)時(shí)間,服務(wù)器將在超時(shí)之后關(guān)閉相應(yīng)的連接
    keepalive_timeout   65;
    types_hash_max_size 2048;
    client_max_body_size 2m;
    # Number of requests a client can make over the keep-alive connection. This is set high for testing.
    # 單個(gè)客戶端在 keep-alive 連接上可以發(fā)送的請(qǐng)求數(shù)量,在測(cè)試環(huán)境中,需要配置個(gè)比較大的值。
    keepalive_requests  10000;
    # Timeout for keep-alive connections. Server will close connections after this time.
    # 配置連接 keep-alive 超時(shí)時(shí)間,服務(wù)器將在超時(shí)之后關(guān)閉相應(yīng)的連接。
    # 客戶端向服務(wù)端發(fā)送一個(gè)完整的 request header 的超時(shí)時(shí)間。如果客戶端在指定時(shí)間內(nèi)沒有發(fā)送一個(gè)完整的 request header,Nginx 返回 HTTP 408(Request Timed Out
    client_header_timeout 40s;
    # send the client a "request timed out" if the body is not loaded by this time. Default 60.
    # 指定客戶端與服務(wù)端建立連接后發(fā)送 request body 的超時(shí)時(shí)間。如果客戶端在指定時(shí)間內(nèi)沒有發(fā)送任何內(nèi)容,Nginx 返回 HTTP 408(Request Timed Out)
    client_body_timeout 40s;
    reset_timedout_connection on;
    # If the client stops reading data, free up the stale client connection after this much time. Default 60.
    # 客戶端數(shù)據(jù)讀超時(shí)配置,客戶端停止讀取數(shù)據(jù),超時(shí)時(shí)間后斷開相應(yīng)連接,默認(rèn)是 60 秒。 服務(wù)端向客戶端傳輸數(shù)據(jù)的超時(shí)時(shí)間
    send_timeout 30;
    server_names_hash_bucket_size 128;
    #客戶端請(qǐng)求頭部的緩沖區(qū)大小,這個(gè)可以根據(jù)你的系統(tǒng)分頁大小來設(shè)置,一般一個(gè)請(qǐng)求頭的大小不會(huì)超過1k,不過由于一般系統(tǒng)分頁都要大于1k,所以這里設(shè)置為分頁大小
    client_header_buffer_size 32k;
    large_client_header_buffers 4 32k;

################################ 限速配置 ################################
    limit_conn_log_level error;
    limit_conn_status 503;
    #limit_conn_zone $binary_remote_addr zone=one:1m;
    #limit_conn_zone $server_name zone=perserver:1m;
    # 定義一個(gè)名為allips的limit_req_zone用來存儲(chǔ)session,大小是10M內(nèi)存,
    # 以$binary_remote_addr 為key,限制平均每秒的請(qǐng)求為20個(gè),
    # 1M能存儲(chǔ)16384個(gè)狀態(tài),rete的值必須為整數(shù),
    # 如果限制兩秒鐘一個(gè)請(qǐng)求,可以設(shè)置成30r/m ,其中$binary_remote_addr有時(shí)需要根據(jù)自己已有的log_format變量配置進(jìn)行替換
    limit_conn_zone $binary_remote_addr zone=perip:1m;
    limit_conn_zone $server_name zone=perserver:1m;

    #limit_req   zone=perip burst=10;
     # 限制客戶端并發(fā)連接數(shù)量為20, allow only one connection per an IP address at a time(每次). ;
    #是限制每個(gè)IP只能發(fā)起20連接 (addr 要跟 limit_conn_zone 的變量對(duì)應(yīng))
    # 表明以ip為key,來限制每個(gè)ip訪問lmit.html文件時(shí)候,最多只能有一個(gè)在線,否則其余的都要返回不可用。
    limit_conn perip 14;
    limit_conn perserver 10;
    limit_req_zone $binary_remote_addr zone=per_ip:1m rate=400r/s;
    limit_req_zone $server_name zone=per_server:10m rate=600r/s;
    limit_req zone=per_ip burst=300 nodelay;
    limit_req zone=per_server burst=500;
################################ web server #######################
    include  /etc/nginx/http/http_web.conf;

}
nginx空域名設(shè)置,禁止ip訪問

防止別把域名解析到我們的ip服務(wù)器,造成我們的ip被墻


# 關(guān)閉nginx空主機(jī)頭 防止nginx空主機(jī)頭及惡意域名指向
server {
    listen *:80 default;
    server_name _;
    #index index.html index.php index.htm;
    #root  /data/wwwroot/zhoulujun;
    #include /etc/nginx/conf.d/php.conf;
    # rewrite ^(.*) //zhoulujun.cn permanent;
    return 301 https://www.zhoulujun.cn$request_uri;
}
nginx php支持配置
################################  php 相關(guān)配置 #######################
    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # include /etc/nginx/conf.d/php-fpm.conf
    upstream php-fpm {
        server unix:/run/php-fpm/www.sock;
    }
################################  php fastcgi 相關(guān)配置 #######################
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
    fastcgi_buffer_size 64k;
    fastcgi_buffers 4 64k;
    fastcgi_busy_buffers_size 128k;
    fastcgi_temp_file_write_size 256k;

################################ host ################################
    include  /etc/nginx/site/default.conf;

linux服務(wù)器 web目錄權(quán)限設(shè)置

給需要讀取的文件,設(shè)置644,給需要指向的文件,如php文章,設(shè)置755,給需要讀寫的文件夾,如html uploadfile 文件夾設(shè)置777


具體權(quán)限設(shè)置,可以參看我之前寫的文章《理清用戶組概念及文件權(quán)限—搞懂網(wǎng)站權(quán)限設(shè)置》

設(shè)置了權(quán)限,由于centos8 默認(rèn)開啟selinux ,網(wǎng)站還是不能訪問。一般報(bào)403錯(cuò)誤。


centos8 網(wǎng)站服務(wù)器 selinux設(shè)置

網(wǎng)上搜索,一般都是說關(guān)閉selinux,但是,個(gè)人不建議關(guān)閉

設(shè)置selinux給web目錄讀權(quán)限

 chcon -v -R --type=httpd_sys_content_t /data/www/

設(shè)置selinux給web目錄寫權(quán)限

chcon -R -t httpd_sys_rw_content_t /data/www/

具體參看《centos8 nginx server root指向自定義目錄如(/data/www),訪問報(bào)403 404,所有文件用戶組為root 權(quán)限為755》


設(shè)置完了,網(wǎng)站就可以運(yùn)行了


linux網(wǎng)站基本安全設(shè)置

linux添加用戶,修改用戶密碼,修改用戶權(quán)限,設(shè)置root操作

  • 添加一個(gè)名為 andyZhou的用戶

    useradd andyZhou

  • 修改密碼

    passwd chenjiafa

  • 給用戶root權(quán)限

    usermod -g root chenjiafa

網(wǎng)站平時(shí)用這個(gè)新增的用戶登錄,需要root權(quán)限,就su 切換

具體查看《linux添加用戶,修改用戶密碼,修改用戶權(quán)限,設(shè)置root用戶操作》

禁止root ssh登錄 修改默認(rèn)端口

修改ssh配置文件


修改ssh登錄端口

vim /etc/ssh/sshd_config

找到“#Port 22”,這一行直接鍵入“yyp”復(fù)制該行到下一行,然后把兩行的“#”號(hào)即注釋去掉,修改成:

#Port 22
Port 10086

大家修改端口時(shí)候最好挑10000~65535之間的端口號(hào),10000以下容易被系統(tǒng)或一些特殊軟件占用,或是以后新應(yīng)用準(zhǔn)備占用該端口的時(shí)候,卻被你先占用了,導(dǎo)致軟件無法運(yùn)行

禁止root ssh登錄

PermitRootLogin no

增加ssh 普通登錄用戶

AllowUsers andyzhou

重啟ssh服務(wù)

systemctl restart sshd

linux防火墻端口設(shè)置

  • linux 防火墻關(guān)閉某個(gè)端口

    firewall-cmd --permanent --zone=public --remove-port=8080/tcp

  • linux 防火墻打開某個(gè)端口

    firewall-cmd --permanent --add-port=10086/tcp

  • 重新加載防火墻策略:

    firewall-cmd --reload

  • 查看防火墻端口開放情況

     firewall-cmd --list-ports


linux虛擬內(nèi)存設(shè)置

我的個(gè)人博客是1g小內(nèi)存,mysql跑起來,經(jīng)常崩潰。

free -m 查看內(nèi)存,根據(jù)情況設(shè)置內(nèi)存,一般虛擬機(jī)內(nèi)存為物理內(nèi)存的2倍。那么設(shè)置2g虛擬內(nèi)存,命令如下

dd if=/dev/zero of=/opt/swap bs=1024 count=2048000
chmod 600 /opt/swap
mkswap /opt/swap
swapon /opt/swap

mysql創(chuàng)建新用戶并授權(quán),禁止root登錄

下面幾行sql,應(yīng)該滿足您的需求


-- 創(chuàng)建用戶,以后用這個(gè)用戶登錄

CREATE USER 'userName' @ '訪問限制' IDENTIFIED BY 'password';

-- 授權(quán)用戶 ,給與數(shù)據(jù)的權(quán)限

GRANT ALL PRIVILEGES ON 數(shù)據(jù)庫名稱.表名稱 TO 'userName'@'訪問限制';

---修改用戶密碼(修改root密碼)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'newPassword';

-- 刷新用戶權(quán)限

FLUSH PRIVILEGES;

關(guān)于centos8安裝配置nginx的教程就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


分享文章:centos8如何安裝配置nginx-創(chuàng)新互聯(lián)
當(dāng)前地址:http://weahome.cn/article/cedpjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部