国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

不止LNMP的后端開發環境搭建

PiscesYE / 1729人閱讀

摘要:前言本次目標是在新安裝在虛擬機中的系統中安裝一系列后端開發通常用到的程序服務這里不介紹的安裝并以為例子部署一個網站開機啟動重要提示如果覺得一個個安裝和配置太麻煩那推薦使用寶塔可視化管理工具進行操作基本實現一鍵操作極大提高效率簡言之一個字爽當

前言

本次目標是在新安裝在虛擬機中的CentOS7.5系統中安裝一系列后端開發通常用到的程序服務(這里不介紹CentOS的安裝),并以phpMyAdmin為例子部署一個網站.

Nginx(1.16)

MySQL(8.0,開機啟動)

PHP(7.3)

Redis(1.5)

memcached(1.4)

Composer(1.8)

phpMyAdmin(4.8)

nodejs(10.15)

yarn(1.15)

重要提示:如果覺得一個個安裝和配置太麻煩那推薦使用寶塔可視化管理工具進行操作,基本實現一鍵操作極大提高效率,簡言之一個字,爽!(當然也不是完美的,如當版本該工具不支持在ubuntu安裝MySQL8.0)

約定

虛擬機ip是192.168.8.15,
管理員用戶名sorgo,
服務程序執行用戶名www,
網站根除目錄/data/wwwroot,
安裝和配置時除特別說明則root用戶操作,
執行編輯文件命令后,下一行開始向右縮進4個空格為本次編輯的內容

CentOS

vmware虛擬機安裝不到20分鐘可以完成(基礎網頁服務器1810版本,選中文環境,yum源默認是163.com)

用戶設置
useradd www -s /usr/sbin/nologin
useradd -G www sorgo
passwd sorgo
#賦予sorgo用戶root權限,且切換root時不用輸密碼, `-l`查看已有權限
visudo
    #編輯內容:
    #添加一條,表示sorgo可使用`sudo`執行root權限
    sorgo ALL=(ALL) NOPASSWD: ALL
全局命令別名設置
vim /etc/bashrc
    # 添加內容:
    alias s-start="systemctl start"
    alias s-stop="systemctl stop"
    alias s-restart="systemctl restart"
    alias s-enable="systemctl enable"
    alias s-disable="systemctl disablep"
    alias s-status="systemctl status"
    alias vi="vim"
    alias ll="ls -laph"
    alias ..="cd .."
    alias nrd="npm run dev"
    alias nrh="npm run hot"
    alias nrp="npm run production"
    alias nrw="npm run watch"
    alias nrww="npm run watch-poll"
    alias yrd="yarn run dev"
    alias yrh="yarn run hot"
    alias yrp="yarn run production"
    alias yrw="yarn run watch"
    alias yrwp="yarn run watch-poll"
    alias pa="php artisan"
    alias phpspec="vendor/bin/phpspec"
    alias phpunit="vendor/bin/phpunit"
#使修改立即生效
source /etc/bashrc
網站目錄及權限
#項目目錄
mkdir -p /data/wwwroot/
#日志目錄
mkdir -p  /data/wwwlogs/nginx/
#網站基礎應用的安裝目錄
mkdir /data/server/
#賦權
chown -R sorgo:www /data/
chmod -Rf g+s /data/
網卡配置
#查看網卡名,左側一欄那個就是
ifconfig
#編輯網卡配置,使nat模式的ip固定下來
vi /etc/sysconfig/network-scripts/ifcfg-ens33
    #編輯內容:
    #配置文件關鍵內容,僅供參考
    NAME=ens33
    DEVICE=ens33
    DEFROUTE=yes
    ONBOOT=yes
    #設置為static時要帶`IPADDR`
    BOOTPROTO=static
    IPADDR=192.168.8.15
    NETMASK=255.255.255.0
    
#重啟生效
systemctl restart network
yum源配置

阿里源

cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache

163源
官方使用幫助

cd /etc/yum.repos.d/  
mv CentOS-Base.repo CentOS-Base.repo.backup  
wget -O CentOS-Base.repo https://mirrors.163.com/.help/CentOS7-Base-163.repo
yum clean all
yum makecache

#更新系統所有yum安裝的程序,選做
yum update -y

yum的一些命令

yum list all               #列出所有安轉包
yum list installed         #列出已經安裝的
yum list available         #列出沒有安裝的
yum remove software        #卸載軟件
yum install software       #安裝軟件
yum search 關鍵字           #搜索與關鍵字相關的軟件
yum whatprovides 文件       #搜索包含此文件的包
yum reinstall software     #從新安裝軟件
yum localinstall 第三方軟件 #安裝該軟件并解決依賴關系
yum info software          #查詢軟件信息
yum groups list            #列出軟件組
yum groups install         #安裝組
yum groups remove          #卸載組
yum groups info            #查看組信息
yum repolist               #查看已安裝的源
關閉防火墻

在centos7.5中,防火墻是默認開機啟動的,在開發環境中為了方便起見這里直接把防火墻關閉

#查看狀態
systemctl status firewalld
#取消開機啟動
systemctl disable firewalld
#關閉防火墻
systemctl stop firewalld
#關閉selinux,否則影響samba的使用
vi /etc/selinux/config
    #編輯內容:
    SELINUX=disabled
pstree
yum install psmisc -y
#查看目前在運行的進程
pstree
編譯安裝程序用到的工具
#centos1810已默認安裝
yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel 
好用的命令
#按進程名查看pid
pidof nginx
#按進程名終止
pkill redis-server
killall redis-server
ssh

ssh連接工具推薦使用MobaXterm,其自帶ftp文件傳輸功能


Nginx(1.16+)

本次安裝的是stable版(當前是1.16.*)
官方安裝指導文檔

增加nginx源文件
#創建源文件
vi /etc/yum.repos.d/nginx.repo
    #添加以下內容
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/7/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    
    [nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key

如果要將主線版本設為默認安裝的版本,可執行yum-config-manager --enable nginx-mainline

安裝
yum install yum-utils
#下面命令會安裝前面源文件設置的stable版本
yum install -y nginx
#查看安裝好的版本
nginx -v
網站目錄配置

全局配置

#配置執行用戶名
vi /etc/nginx/nginx.conf
    #編輯內容:
    user www;

為新項目添加一個nginx站點配置,這是一個php網站的配置模板,今后其它網點的配置都會以這個模板為基礎進行修改匹配.

#vi /etc/nginx/conf.d/your_project_name.conf
    #編輯內容:
    #添加
    server
    {
      listen 1700;
      #listen 443 ssl http2;
      #listen [::]:443 ssl http2;
      #listen [::]:80;
      #server_name domain.com;
      
      #字符集設置只能在server塊內
      charset utf-8;
      
      index index.php index.html index.htm default.php default.htm default.html;
      root /data/wwwroot/your_project_name/public;
      
      #access_log  /data/wwwlogs/nginx/your_project_name.log;
      #error_log  /data/wwwlogs/nginx/your_project_name.error.log;
    
      #laravel、thinkPHP路由配置
      location / {
       try_files $uri $uri/ /index.php?$query_string;
      }
      
      #運行php文件
      location ~ .php$ {
        try_files $uri =404;
        fastcgi_index  index.php;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
      }
    
      #禁止訪問的文件或目錄
      location ~ ^/(.user.ini|.htaccess|.git|.svn|.project|LICENSE|README.md)
      {
        return 404;
      }
      
      location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$
      {
        expires      30d;
        error_log off;
        access_log /dev/null;
      }
      
      location ~ .*.(js|css)?$
      {
        expires      12h;
        error_log off;
        access_log /dev/null; 
      }
    }
運行
#測試配置信息是否有語法問題,通過后才能啟動
nginx -t
#啟動
nginx

全部指令

nginx -t        #測試配置信息
nginx #默認啟動方式 start
nginx -v #顯示版本信息,-V(大V)顯示編譯時的參數
nginx -s stop #快速停止服務
nginx -s quit #正常停止服務
nginx -s reload #重啟

PHP(7.3) PHP7.3 安裝
#安裝源
yum install -y epel-release
yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
#搜索符合條件的包
yum search php73
#安裝php7.3及其擴展
#包含redis、memcached、msgpack和yaf框架等php擴展
yum install -y php73-php php73-php-fpm php73-php-pear php73-php-bcmath php73-php-mbstring php73-php-cli php73-php-pdo php73-php-pecl-mysql php73-php-mysqlnd php73-php-pecl-redis4 php73-php-pecl-memcached php73-php-pecl-msgpack php73-php-pecl-yaf php73-php-pecl-jsond-devel php73-php-gd php73-php-common php73-php-intl php73-php-xml php73-php-opcache php73-php-pecl-apcu php73-php-gmp php73-php-process php73-php-pecl-imagick php73-php-devel php73-php-zip php73-php-ldap php73-php-imap php73-php-pecl-mcrypt

#程序的安裝路徑:`/opt/remi/php73/`;
#配置文件路徑:`/etc/opt/remi/php73/php.ini`;
配置
cp /etc/opt/remi/php73/php.ini /etc/opt/remi/php73/php.ini.bak
#修改php時區和擴展文件目錄路徑
vi /etc/opt/remi/php73/php.ini
    #編輯內容:
    date.timezone = PRC
    extension_dir = "/opt/remi/php73/root/usr/lib64/php/modules/"
    
#修改php-fpm執行用戶
vi /etc/opt/remi/php73/php-fpm.d/www.conf
    #編輯內容:
    user=www
    group=www
    
#賦權
chown -R root:www /var/opt/remi/

#軟鏈到一般目錄
ln -s /etc/opt/remi/php73/php.ini /etc/php.ini
ln -s /opt/remi/php73/root/usr/bin/php /usr/bin/php
ln -s /opt/remi/php73/root/usr/sbin/php-fpm /usr/bin/php-fpm
ln -s /opt/remi/php73/root/usr/bin/php-cgi /usr/bin/php-cgi
ln -s /opt/remi/php73/root/usr/bin/pear /usr/bin/php-pear
ln -s /opt/remi/php73/root/usr/bin/phar.phar /usr/bin/php-phar

#查看安裝的php版本
php -v
#查看已經安裝的php擴展模塊
php -m
運行php-fpm
#啟動
php-fpm
#終止
kill -QUIT `cat /var/opt/remi/php73/run/php-fpm/php-fpm.pid`
#重啟
kill -USR2 `cat /var/opt/remi/php73/run/php-fpm/php-fpm.pid`

MySQL(8.0)

官方安裝指南

yum安裝 安裝
#下載源
wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
#安裝源
yum localinstall -y mysql80-community-release-el7-1.noarch.rpm
  #列出可用的mysql包
  #yum repolist enabled | grep mysql
  #如果打算安裝5.7,那執行下面兩句,切換默認版本
  #yum-config-manager --disable mysql80-community
  #yum-config-manager --enable mysql57-community
#安裝
yum install -y mysql-community-server
    #更新版本
    #yum update mysql-server

# 查看版本
mysql -V
配置
vi /etc/my.cnf
    #編輯內容
    [mysqld]
    # 設置3301端口
    port=3301
    # 允許最大連接數
    max_connections=200
    # 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統
    max_connect_errors=10
    # 服務端使用的字符集默認為UTF8
    #character-set-server=utf8
    # 創建新表時將使用的默認存儲引擎
    default-storage-engine=INNODB
    # 默認使用“mysql_native_password”插件認證,以mysql5.7的密碼處理方式保存,以兼容較舊的連接程序,8.0默認是caching_sha2_password方式
    default_authentication_plugin=mysql_native_password
    #設置默認時區
    default-time_zone = "+8:00"
運行
# 啟動
systemctl start mysqld
# 開機啟動
systemctl enable mysqld
# 狀態
systemctl status mysqld
# 查看root初始密碼
grep "temporary password" /var/log/mysqld.log

# 登錄
mysql -uroot -p
# 必須修改初始密碼,新密碼須包含大小字字母、數字和特殊字符至少8個字符
# 采用mysql_native_password方式處理密碼,以mysql5.7的密碼處理方式保存,以兼容較舊的連接程序,8.0默認是caching_sha2_password方式
  mysql> ALTER USER "root"@"localhost" IDENTIFIED WITH mysql_native_password BY "Sorgo123.";
# 進入MySQL數據庫
  mysql> use mysql;
# 設置root用戶可在任意主機登錄
  mysql> update user set host="%" where user="root" and host="localhost";
  mysql> FLUSH PRIVILEGES;   
# 查詢user表信息
  mysql> select user,host,plugin from user;

Redis(5.0)

推薦的使用手冊

安裝
cd /data/server/
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
tar -zvxf redis-5.0.4.tar.gz && cd redis-5.0.4
make
#軟鏈成統一的目錄,方便多版本管理
ln -s /data/server/redis-5.0.4 /data/server/redis
ln -s /data/server/redis/redis.conf /etc/redis.conf
#軟鏈到命令目錄
ln -s /data/server/redis/src/redis-cli /usr/local/bin/redis-cli
ln -s /data/server/redis/src/redis-server /usr/local/bin/redis-server
ln -s /data/server/redis/src/redis-sentinel /usr/local/bin/redis-sentinel
#查看版本
redis-server -v
配置
# vi /etc/redis.conf
    #任意主機可訪問
    bind 0.0.0.0
    #密碼登錄
    requirepass Sorgo123.
    #后臺進程的方式運行
    daemonize yes
運行
#按配置文件開啟
redis-server /etc/redis.conf
#進入交互操作工具
redis-cli -h 127.0.0.1 -p 6379 -a Sorgo123.
#查看redis進程信息
info server
#關閉服務
shutdown

memcached(1.4) yum安裝1.4
yum install -y memcached
#查看幫助信息及版本
memcached -h
#開啟,可按不同端口開啟多個進程
memcached -d -p 11211 -m 150 -u www
#關閉,會把進程名包含`memcached`的都關閉
pkill memcached
啟動選項: 
-d 是啟動一個守護進程;
-m 是分配給Memcache使用的內存數量,單位是MB;
-u 是運行Memcache的用戶;
-l 是監聽的服務器IP地址,可以有多個地址;
-p 是設置Memcache監聽的端口,,最好是1024以上的端口;
-c 是最大運行的并發連接數,默認是1024;
-P 是設置保存Memcache的pid文件。
編譯安裝,1.5
cd /data/server/
#先安裝依賴,否則無法編譯
yum install -y libevent-devel
#下載源碼
wget http://www.memcached.org/files/memcached-1.5.13.tar.gz
#解壓和進入目錄
tar -zvxf memcached-1.5.13.tar.gz && cd memcached-1.5.13
#執行配置,這里只設置安裝目錄
./configure --prefix=/data/server/memcached-1.5.13/
#編譯和安裝
make && make install
ln -s /data/server/memcached-1.5.13 /data/server/memcached
ln -s /data/server/memcached/bin/memcached /usr/local/bin/memcached
#查看安裝的版本
memcached -h

samba(4.8)
#安裝
yum install -y samba samba-client samba-common 
#添加samba用戶,用戶已存在的用戶名,專門給samba登錄的密碼:sorgo
smbpasswd -a sorgo
#查看已添加的用戶
pdbedit -L

#修改配置
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
vim /etc/samba/smb.conf
    #添加可通過samba訪問的目錄路徑
    [wwwroot]
             comment = website root
             path = /data/wwwroot
             valid users = sorgo
             writable = yes
             create mask = 0750
             directory mask = 0750
             
#檢測配置文件語法
testparm
#啟動
systemctl enable smb && systemctl enable nmb
systemctl restart smb && systemctl restart nmb
#查看狀態
smbstatus

# linux端使用
##測試連接
smbclient -L //192.168.8.15 -U smb_user_naem
##掛載到應用端
mount -t cifs //192.168.8.15/wwwroot/  /smb/ -o  username=smb_user_naem,password=1234
df -h /smb
##卸載
umount /smb

# windows端使用
${ip}

# 注意事項
* 絕對不要在配置文件里寫中文,即使是中文注釋,否則windows無法進入該目錄!!!
* 如果服務器在windows里ping不通(不是因為服務器禁止ping,而是未知原因),那也是連不上的.
* phpstrom在打開samba項目文件時變得異常卡頓

Composer(1.8)

安裝

#生成composer.phar
php73 -r "copy("https://install.phpcomposer.com/installer", "composer-setup.php");"
php73 composer-setup.php
php73 -r "unlink("composer-setup.php");"
#移至命令目錄
mv composer.phar /usr/local/bin/composer
#版本等信息
composer

設置

#設置源為國內鏡像,下面二選一
composer config -g repo.packagist composer https://packagist.phpcomposer.com
composer config -g repo.packagist composer https://packagist.laravel-china.org
#解除上面的設置
composer config -g --unset repos.packagist
#查看全局配置
composer config -gl

phpMyAdmin

phpMyAdmin其實就是一個php寫的網站, 到官網把php文件包下載到服務器, 設置好nginx指向根目錄即可.

cd /data/server/

#獲取方式1: 使用composer下載(有時速度不理想)
#composer create-project phpmyadmin/phpmyadmin
#獲取方式2: wget直接從官網下載(這是本次演示的方式)
wget https://files.phpmyadmin.net/phpMyAdmin/4.8.5/phpMyAdmin-4.8.5-all-languages.zip
#獲取方式3: 在其它地方下載好,然后通過ftp上傳到本服務器,原則上哪個便利采用哪種

#解壓到當前目錄
unzip phpMyAdmin-4.8.5-all-languages.zip
#軟鏈方便版本控制
ln -s phpMyAdmin-4.8.5-all-languages phpmyadmin

#編輯配置文件
cp phpmyadmin/config.sample.inc.php phpmyadmin/config.inc.php
vi phpmyadmin/config.inc.php
    #下面是編輯內容: 
    #設置任意32位以上長度的密鑰
    $cfg["blowfish_secret"] = "dNE9GVnon3LWSVGvhGPuZdBhb7c7RtQ3"; 

#賦權
chmod -R 770  phpmyadmin/

#nginx網站配置,利用sed命令來替換一個模板配置中的關鍵值
#主要改變了監聽的端口`8888`和日志文件名`phpmyadmin`
cat /etc/nginx/conf.d/your_project_name.conf | sed "s/1700/8888/g" | sed "s/your_project_name./phpmyadmin./g" | sed "s/wwwroot/your_project_name/public/server/phpmyadmin//g" > /etc/nginx/conf.d/phpmyadmin.conf

#檢查配置文件無誤方可啟動
nginx -t
#重啟nginx
nginx -s reload
#訪問
http://192.168.8.15:8888/

node.js(10.15lts)

中文API文檔
node.js的安裝方式有:

epel源yum安裝(目前是6.16版);

二進制文件安裝;

源碼編譯安裝;

現在介紹后兩種方法,也是版本選擇較為豐富的方法

二進制文件安裝(10.15.3)(推薦)

這個是下載下來就能用的

cd /data/server/
#下載二進制文件包,大概12M
wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz
#解壓,注意這個解壓命令與解壓`.gz`結尾的文件不同
tar -xJvf node-v10.15.3-linux-x64.tar.xz
#軟鏈
ln -s node-v10.15.3-linux-x64 node
ln -s /data/server/node/bin/node /usr/local/bin/node
ln -s /data/server/node/bin/npm /usr/local/bin/npm
ln -s /data/server/node/bin/npx /usr/local/bin/npx

#查看版本
node -v
npm -v
編譯安裝(10.15.3)

編譯的過程很慢,親測一個小時左右

cd /data/server/
#下載源碼,大概35M
wget https://nodejs.org/dist/v10.15.3/node-v10.15.3.tar.gz
tar -zvxf node-v10.15.3.tar.gz && cd node-v10.15.3
#執行配置腳本
./configure
#編譯和安裝
make && make install
#查看版本
node -v
npm -v

yarn(1.15)

官方安裝文檔

#添加yarn的yum源
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
#安裝,須確保nodejs已經安裝好
yum install -y yarn
#查看版本
yarn -v

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/40596.html

相關文章

  • 不止LNMP后端開發環境搭建

    摘要:前言本次目標是在新安裝在虛擬機中的系統中安裝一系列后端開發通常用到的程序服務這里不介紹的安裝并以為例子部署一個網站開機啟動重要提示如果覺得一個個安裝和配置太麻煩那推薦使用寶塔可視化管理工具進行操作基本實現一鍵操作極大提高效率簡言之一個字爽當 前言 本次目標是在新安裝在虛擬機中的CentOS7.5系統中安裝一系列后端開發通常用到的程序服務(這里不介紹CentOS的安裝),并以phpMyA...

    stefan 評論0 收藏0
  • container-as-a-service-0x01 -- 基于Docker的私有云&混合

    摘要:基于的私有云混合云構建方案蘇依蜀黍是一個開源的引擎,可以輕松的為任何應用創建一個輕量級的可移植的自給自足的容器。開發者在筆記本上編譯測試通過的容器可以批量地在生產環境中部署,包括虛擬機集群和其他的基礎應用平臺。 container-as-a-service-0x01 -- 基于Docker的私有云&混合云構建方案 By 蘇依蜀黍 . 2016.06.07 what Docker是一...

    import. 評論0 收藏0

發表評論

0條評論

PiscesYE

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<