wget -O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo
-o 指定下載路徑 將文件下載到 CentOS-Base.repo 文件中
yum clean all 清空yum軟件源
yum makecache 生成緩存
yum install -y epel-release # 利用 yum 安裝(install) epel源(epel-release) 並確認(-y)
yum install nginx -y
systemctl start nginx 啓動nginx服務
systemctl stop nginx 關閉 nginx 服務
systemctl restart nginx 重啓 nginx 服務
yum 安裝簡單省事,但安裝性能差:yum安裝沒法按照本身的意志進行安裝,yum install XXX -y 安裝XXX程序systemctl start XXX 啓動XXX程序他的過程你根本沒法插手,
編譯安裝的優點是
- 編譯安裝時能夠指定擴展的module(模塊),php、Apache、nginx都是同樣有不少第三方模塊,如mysql,編譯安裝時,須要定製儲存引擎(innodb、mylasm)
- 編譯安裝能夠統一路徑,Linux軟件約定安裝目錄在/opt/下面
- 軟件倉庫版本通常比較低,編譯源碼安裝能夠根據需求,安裝最新版本
yum install lrzsz -y
sz 文件名 上傳(基於Linux)
rz 文件名 下載(基於Linux)
在咱們剛裝好linux的時候,須要用xshell進行遠程鏈接,那就得獲取ip地址,有時候網卡默認是沒啓動的,Linux也就拿不到ip地址,所以咱們得手動啓動網卡php
#編輯網卡配置文件html
vim /etc/sysconfig/network-scripts/ifcfg-eth0前端
#修改配置參數python
ONBOOT=yesmysql
# 簡化爲linux
直接輸入ifconfig會列出已經啓動的網卡,也能夠輸入ifconfig eth33單獨顯示eth33的信息
各選項解釋是:nginxeth33 網卡的代號 c++
lo 迴環地址loopback inet IPv4的Ip地址 web
netmask 子網掩碼 正則表達式
broadcast 廣播地址
RX/TX 流量發/收狀況 ,tx是發送(transport),rx是接收(receive)
packets 數據包數
errors 數據包錯誤數
dropped 數據包有問題被丟棄的數量
collisions 數據包碰撞狀況,數值太多表明網絡情況差
ifup和ifdown是直接鏈接到/etc/sysconfig/network-scripts目錄下搜索對應的網卡文件
ifup 網卡號 啓動網卡
ifdown 網卡號 關閉網卡
這個ip命令是結合了ifconfig和route兩個命令的功能。ip addr show #查看ip信息
cat /etc/redhat-release # 查看系統版本信息
unmae -r # 查看內核版本號
uname -m # 查看系統多少位
uname -a # 查看內核全部信息
能夠更形象的展現文件夾的關係
下載:yum install tree -y
測試 :tree 文件夾
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y
下載安裝
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
xz -d Python-3.6.2.tar.xz
tar -xf Python-3.6.2.tar
# 能夠直接調用 tar -xf Python-3.6.2.tar.xz# 編譯安裝
yum install gcc -y # 安裝 gcc
./configure --prefix=/opt/python # 釋放編譯文件,指定python3的安裝路徑
make # 編譯,用於從makefile 中讀取指令,而後編譯
make install # 安裝,從makefile 中讀取命令,而後將python安裝到 /opt/python
make && make install # 兩步合成一步
而後將安裝到/opt/python的程序進行軟鏈接操做
配置環境變量
$PATH (打印環境變量)
PATH=/opt/python/bin + $PATH (將環境變量添加進去)
注意:
下載後獲得的是 Python-3.6.2.tar.xz壓縮包,
解壓縮後獲得 python3.6 安裝程序
make install 以後獲得的是 python程序
下載django
pip install django==版本號(使用pip仍是pip3,看實際狀況)
建立項目
django-admin startproject 項目名稱
啓動項目
python3 manage.py runserver ip+端口
Redis 是一個開源(BSD許可)的,內存中的數據結構存儲系統,它能夠用做數據庫、緩存和消息中間件
高速緩存介紹
高速緩存利用內存保存數據,讀寫速度遠超硬盤(騰訊的微信紅包,使用redis)
高速緩存能夠減小i/o操做,下降i/o壓力
redis是wmware開發的開源免費的kv型NoSQL緩存產品
redis具備很好的性能,最多能夠提供10萬次/秒的讀寫
目前新浪微博團隊組建了世界上最大規模的redis
第一種方法:yum安裝
一、配置好阿里雲yum源,epel源
二、查看是否有redis包:yum list redis
三、安裝redis : yum install redis -y
四、啓動redis :systemctl start redis
五、檢驗是否工做:
redis-cli 進入redis 客戶端
進入交互式環境後,執行ping,返回pong 表示安裝成功 (查看服務端是否開啓:ps -ef netstat -tunlp | grep redis)
第二種方法:編譯安裝
一、下載源碼
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
二、解壓縮
tar -zxf redis-4.0.10.tar.gz
三、切換redis源碼目錄
cd redis-4.0.10
四、無需釋放編譯文件,直接進行編譯、安裝
make && make install
至此redis 默認安裝到了 /usr/local/bin
redis可執行文件
./redis-benchmark //用於進行redis性能測試的工具 ./redis-check-dump //用於修復出問題的dump.rdb文件 ./redis-cli //redis的客戶端 ./redis-server //redis的服務端 ./redis-check-aof //用於修復出問題的AOF文件 ./redis-sentinel //用於集羣管理
啓動redis服務端
在 /usr/local/bin 目錄中輸入 ./redis-sercer 啓動服務器
直接執行redis-server會在前端直接運行,也就是說:關閉當前回話,則redis服務也隨之關閉,正常狀況下,redis須要從後臺啓動,並指定啓動配置文件。
後臺啓動redis服務
一、進入你的安裝程序(源碼解壓縮後的目錄)
二、找到一個redis.conf文件
三、編輯redis.conf文件
四、保存退出後,再啓動redis
五、進入redis
#執行客戶端命令便可進入 ./redis-cli #測試是否鏈接上redis 127.0.0.1:6379 > ping 返回pong表明鏈接上了 //用set來設置key、value 127.0.0.1:6379 > set name "chaoge" OK //get獲取name的值 127.0.0.1:6379 > get name "chaoge"
連接: redis博客
在使用雲服務器時,安裝的redis3.0+版本都關閉了protected-mode,於是都遭遇了挖礦病毒的攻擊,使得服務器99%的佔用率!!
所以咱們在使用redis時候,最好更改默認端口,而且使用redis密碼登陸。
一、找到redis.conf(在安裝目錄中)
在底線模式 :set nu 顯示行號
在命令模式:/prot 查找關鍵詞
在底線模式::行號 轉跳
protected-mode yes #打開保護模式 port 6380 #更改默認啓動端口 requirepass xxxxxx #設置redis啓動密碼,xxxx是自定義的密碼修改完後,
執行命令 : redis-server /root/redis-4.0.10/redis.conf (家目錄~ 的下面) 加載配置文件
啓動服務端
redis-cli -p 6380 (調用6380的端口)
關於密碼的設置和查詢
這樣你的redis就不容易被黑客入侵了
熱加載
在重啓服務器的狀況下,從新加載文件
redis。。。
在調用redis.conf文件的狀況下從新加載
redis.conf文件中有些特殊的配置(端口、密碼)
yum install mariadb-server mariadb # 安裝
systemctl start mariadb #啓動MariaDB
systemctl stop mariadb #中止MariaDB
systemctl restart mariadb #重啓MariaDB
systemctl enable mariadb #設置開機啓動
在確認 MariaDB 數據庫軟件程序安裝完畢併成功啓動後請不要當即使用。爲了確保數據庫的安全性和正常運轉,須要先對數據庫程序進行初始化操做。
這個初始化操做涉及下面 5 個 步驟。
➢ 設置 root 管理員在數據庫中的密碼值(注意,該密碼並不是 root 管理員在系統中的密 碼,這裏的密碼值默認應該爲空,可直接按回車鍵)。
➢ 設置 root 管理員在數據庫中的專有密碼。
➢ 隨後刪除匿名帳戶,並使用 root 管理員從遠程登陸數據庫,以確保數據庫上運行的業 務的安全性。
➢ 刪除默認的測試數據庫,取消測試數據庫的一系列訪問權限。
➢ 刷新受權列表,讓初始化的設定當即生效。
確保mariadb服務器啓動後,執行命令初始化
mysql_secure_installation
初始化mysql
mysql使用grant命令對帳戶進行受權,grant命令常見格式以下
grant 權限 on 數據庫.表名 to 帳戶@主機名 對特定數據庫中的特定表受權 grant 權限 on 數據庫.* to 帳戶@主機名 對特定數據庫中的全部表給與受權 grant 權限1,權限2,權限3 on *.* to 帳戶@主機名 對全部庫中的全部表給與多個受權 grant all privileges on *.* to 帳戶@主機名 對全部庫和全部表受權全部權限
退出數據庫,使用root登陸,開始權限設置
MariaDB [(none)]> grant all privileges on *.* to yuchao@127.0.0.1; MariaDB [mysql]> show grants for yuchao@127.0.0.1;
移除權限
MariaDB [(none)]> revoke all privileges on *.* from yuchao@127.0.0.1;
配置mysql
編輯mysql配置文件/etc/my.cnf [mysqld] character-set-server=utf8 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock collation-server=utf8_general_ci security risks symbolic-links=0 log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid [client] default-character-set=utf8 [mysql] default-character-set=utf8
遠程鏈接設置哦設置全部庫,全部表的全部權限,賦值權限給全部ip地址的root用戶 mysql > grant all privileges on *.* to root@'%' identified by 'password'; #建立用戶 mysql > create user 'username'@'%' identified by 'password'; #刷新權限 flush privileges;
mysqldump命令用於備份數據庫數據
[root@master ~]# mysqldump -u root -p --all-databases > /tmp/db.dump
進入mariadb數據庫,刪除一個db
[root@master ~]# mysql -uroot -p MariaDB [(none)]> drop database s11;
進行數據恢復,把剛纔重定向備份的數據庫文件導入到mysql中
[root@master ~]# mysql -uroot -p < /tmp/db.dump
nginx是一個開源的,支持高性能,高併發的www服務和代理服務軟件。它是一個俄羅斯人lgor sysoev開發的,做者將源代碼開源出來供全球使用。
nginx比它大哥apache性能改進許多,nginx佔用的系統資源更少,支持更高的併發鏈接,有更高的訪問效率。
nginx不可是一個優秀的web服務軟件,還能夠做爲反向代理,負載均衡,以及緩存服務使用。
安裝更爲簡單,方便,靈活。
nginx能夠說是很是nb了
一. gcc 安裝 安裝 nginx 須要先將官網下載的源碼進行編譯,編譯依賴 gcc 環境,若是沒有 gcc 環境,則須要安裝: yum install gcc-c++ 二. PCRE pcre-devel 安裝 PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,因此須要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發的一個二次開發庫。nginx也須要此庫。命令: yum install -y pcre pcre-devel 三. zlib 安裝 zlib 庫提供了不少種壓縮和解壓縮的方式, nginx 使用 zlib 對 http 包的內容進行 gzip ,因此須要在 Centos 上安裝 zlib 庫。 yum install -y zlib zlib-devel 四. OpenSSL 安裝 OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、經常使用的密鑰和證書封裝管理功能及 SSL 協議,並提供豐富的應用程序供測試或其它目的使用。 nginx 不只支持 http 協議,還支持 https(即在ssl協議上傳輸http),因此須要在 Centos 安裝 OpenSSL 庫。 yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel openssl openssl-devel -y
1.下載源碼包 wget -c https://nginx.org/download/nginx-1.12.0.tar.gz 2.解壓縮源碼 tar -zxvf nginx-1.12.0.tar.gz 3.配置,編譯安裝 ./configure --prefix=/opt/nginx1-12/ --with-http_ssl_module --with-http_stub_status_module make && make install 4.啓動nginx,進入sbin目錄,找到nginx啓動命令 cd sbin ./nginx #啓動 ./nginx -s stop #關閉 ./nginx -s reload #從新加載
netstat -tunlp |grep 80 curl -I 127.0.0.1 #若是訪問不了,檢查selinux,iptables
在conf/nginx.conf文件中
因爲我們以前用yum裝過一次nginx,所以yum幫你配置好了nginx的環境變量,可能就會影響你編譯安裝的nignx運行
由於運行的是yum的nginx,而你本身的編譯nginx並無啓動
因此,果斷點,yum remove nginx (刪除yum下載的nginx)這時,你的nginx環境變量就沒了
先在本地搞一個測試域名,就是編輯 hosts 那個文件 hosts文件在C:\Windows\System32\drivers\etc\hosts
在文件中添加 ip 域名
示例: 10.0.0.10 taobao.com
在nginx.conf 裏面修改配置
打開訪問日誌,用於記錄網站訪問日誌,防止被攻擊
網站文件根路徑配置
錯誤頁面設置 也是在程序的html目錄中,默認是404.html頁面
配置文件設置好之後,進行檢查並熱加載(重啓)
檢查
重啓後進行熱加載
小結
中文亂碼問題
進程管理問題
關於多個域名問題
仍是在hosts文件中添加一個域名 10.0.0.10 ddm.com(若是不放心,就從網上輸入這個域名,看看有沒有響應頁面)
接下來修改配置文件 nginx.conf
保存退出後,進行熱加載(重啓)生效
一、安裝
pip3 install virtualenv (也能夠用pip)
二、方便管理,建立一個Myproject 目錄,並進入到目錄中
mkdir Myproject
cd Myproject
三、建立獨立運行環境
1)在哪裏執行命令就在哪裏生成運行環境
2)指定那個django版本,就生成哪一個版本,不然默認生成系統環境中的django
四、激活虛擬環境
執行虛擬環境中的activate文件
五、檢查環境變量
一、找到你的項目(或者新建一個項目)並進入到項目中
python3 manage.py runserver 0.0.0.0:80
建立兩個虛擬環境,分別安裝django1.11.15,django2 ,而後用兩個虛擬環境分別啓動django項目
1.分別在虛擬環境下建立django項目
(my_venv_django1.11.15) [root@s13linux /home/all_venv 22:15:02]$django-admin startproject mysite_v1
2.第二個虛擬環境建立django
(venv2) [root@s13linux /home/all_venv 22:15:49]$django-admin startproject mysite_v2
3.分別修改django的settings.py文件,容許全部主機訪問
ALLOWED_HOSTS = ['*']
4.分別啓動django,
python3 manage.py runserver 0.0.0.0:8000
python3 manage.py runserver 0.0.0.0:9000