LAMP+LNMP網站架構與運維實戰

LAMP+LNMP網站架構與運維實戰

《LAMP+LNMP網站架構與運維實戰》是清華大學出版社出版的圖書。

基本介紹

  • 中文名:LAMP+LNMP網站架構與運維實戰
  • 作者:張春曉
  • 出版社:清華大學出版社
  • ISBN:9787302579892
  • 定價:109 元
內容簡介,作者簡介,目錄,

內容簡介

由於LAMP(Linux+Apache Web+MySQL+PHP)都是開源軟體,而且Linux發行版中提供這些軟體的安裝包以及默認的配置,因此LAMP稱為搭建網站的一個整體解決方案,同樣,LNMP(用Nginx替代Apache Web)方案也很流行。目前這兩個方案是網際網路上非常流行的電子商務基礎框架系統。
本書共12章,內容包括LAMP環境搭建、使用WordPress搭建部落格站點、深入Linux、深入MySQL資料庫、深入PHP編程、SSL讓網站更安全、LAMP安全管理、計畫任務和作業調度、Nginx入門、深入Nginx、LAMP和LNMP性能監控、Zabbix全方位監控服務。
本書結構清晰、易教易學、實例豐富、可操作性強,對易混淆和實用性強的內容進行了重點提示和講解。本書適合Linux系統管理人員、MySQL+PHP開發人員閱讀,可以作為高等院校、中職學校和培訓機構計算機相關專業的師生教學參考。

作者簡介

張春曉,計算機軟體與理論碩士,長期從事UNIX及Linux系統維護達15年之久,對Shell編程有深入的研究。作者熱衷於UNIX的嚴謹與簡潔,又痴迷於Linux的自由與開放,整日與UNIX及Linux為伴,從中獲益匪淺。著有圖書《Kubernetes零基礎快速入門》《Ubuntu Linux 系統管理實戰》等。

目錄

第1章 網際網路“打工人”的LAMP 1
1.1 Linux的安裝使用 1
1.1.1 獲取安裝介質 2
1.1.2 標準安裝 4
1.1.3 網路安裝 12
1.1.4 通過Kickstart和PXE自動安裝Linux 14
1.1.5 登錄Linux 24
1.1.6 遠程登錄Linux 27
1.1.7 幾個簡單操作 36
1.2 Apache的安裝使用 40
1.2.1 安裝Apache 40
1.2.2 Apache的啟動和運行 43
1.2.3 Apache的幾個重要模組介紹 45
1.2.4 httpd.conf檔案 49
1.2.5 Apache虛擬主機 58
1.2.6 認證、授權 67
1.2.7 訪問控制 75
1.3 MySQL的安裝和使用 78
1.3.1 安裝MySQL 79
1.3.2 管理MySQL服務 85
1.3.3 配置MySQL 89
1.3.4 資料庫管理常用操作 90
1.3.5 數據表管理常用操作 92
1.3.6 數據管理常用操作 97
1.4 PHP的安裝和使用 103
1.4.1 安裝PHP 103
1.4.2 配置PHP-FPM 105
1.4.3 PHP開發工具 107
1.4.4 PHP語法速覽 108
1.5 mysqli 118
1.5.1 安裝mysqli 118
1.5.2 連線及斷開資料庫 122
1.5.3 查詢數據 123
1.5.4 插入數據 129
1.5.5 更新數據 134
1.5.6 刪除數據 135
1.6 PDO 135
1.6.1 PDO及常用方法 135
1.6.2 查詢數據 137
1.6.3 插入數據 141
1.6.4 更新數據 143
1.6.5 刪除數據 143
第2章 使用WordPress搭建自己的部落格站點 145
2.1 準備環境 145
2.1.1 系統環境 145
2.1.2 準備Apache伺服器 146
2.1.3 準備MySQL伺服器 147
2.2 系統安裝 147
2.2.1 下載WordPress軟體 148
2.2.2 創建WordPress資料庫 148
2.2.3 安裝WordPress 148
2.2.4 發布新文章 153
第3章 深入Linux 155
3.1 認識與學習Shell 155
3.1.1 Shell及其類型 155
3.1.2 命令別名與歷史命令 157
3.1.3 重定向 158
3.1.4 管道 161
3.1.5 Shell腳本 162
3.2 檔案與目錄管理 164
3.2.1 檔案及類型 164
3.2.2 檔案和目錄管理 167
3.2.3 檔案搜尋 169
3.3 磁碟與檔案系統管理 170
3.3.1 磁碟分區 170
3.3.2 創建檔案系統 173
3.3.3 掛載檔案系統 174
3.3.4 自動掛載 175
3.3.5 檢查檔案系統 175
第4章 深入MySQL資料庫 176
4.1 常用內置函式 176
4.1.1 字元串函式 177
4.1.2 日期和時間函式 178
4.1.3 數學函式 181
4.1.4 JSON函式 181
4.2 存儲引擎 191
4.2.1 存儲引擎 191
4.2.2 MyISAM 192
4.2.3 InnoDB 193
4.2.4 MEMORY 194
4.2.5 MERGE 194
4.3 字元集 196
4.3.1 MySQL支持的字元集 196
4.3.2 伺服器字元集和排序規則 199
4.3.3 資料庫字元集和排序規則 200
4.3.4 表字元集和排序規則 201
4.3.5 列字元集和排序規則 202
4.3.6 字元串的字元集和排序規則 202
4.3.7 連線字元集和排序規則 203
4.3.8 字元集和排序規則的優先權 204
4.4 索引 204
4.4.1 普通索引 204
4.4.2 唯一索引 207
4.4.3 全文索引 207
4.4.4 不可見索引 211
4.4.5 倒序索引 213
4.5 視圖 213
4.5.1 創建視圖 214
4.5.2 查看視圖 215
4.5.3 修改視圖 217
4.5.4 刪除視圖 218
4.6 鎖和事務 218
4.6.1 MySQL的鎖 218
4.6.2 MyISAM的鎖 219
4.6.3 InnoDB的鎖 220
4.6.4 事務 223
4.7 MySQL許可權管理 224
4.7.1 用戶和角色 224
4.7.2 創建用戶 227
4.7.3 修改用戶 229
4.7.4 刪除用戶 230
4.7.5 查看用戶許可權 230
4.7.6 授予用戶許可權 231
4.7.7 收回用戶許可權 234
第5章 深入PHP編程 235
5.1 條件語句 235
5.1.1 if語句 235
5.1.2 if…else語句 236
5.1.3 if...elseif....else語句 237
5.1.4 switch語句 238
5.2 循環語句 239
5.2.1 while循環語句 239
5.2.2 do…while循環語句 240
5.2.3 for循環語句 241
5.2.4 foreach循環語句 242
5.3 跳轉語句 242
5.3.1 break語句 242
5.3.2 continue語句 243
5.4 PHP數組 244
5.4.1 定義數組 244
5.4.2 索引數組 245
5.4.3 關聯數組 247
5.4.4 多維數組 249
5.5 PHP函式 250
5.5.1 定義和調用函式 250
5.5.2 傳遞參數 251
5.5.3 返回值 253
5.5.4 變數函式 254
5.6 面向對象程式設計 255
5.6.1 類的定義 255
5.6.2 創建對象 257
5.6.3 構造函式 258
5.6.4 析構函式 259
5.6.5 繼承 260
5.6.6 覆蓋 261
5.6.7 訪問控制 263
第6章 SSL讓網站更安全 265
6.1 什麼是SSL 265
6.1.1 對稱加密和非對稱加密 265
6.1.2 SSL與TLS 267
6.1.3 數字證書 268
6.1.4 HTTP與HTTPS 272
6.2 SSL證書申請 273
6.2.1 商業SSL證書申請 274
6.2.2 免費證書申請 278
6.2.3 自簽名證書 278
6.3 Apache伺服器配置SSL證書 280
6.3.1 準備證書 281
6.3.2 mod_ssl模組 281
6.3.3 安裝證書 281
6.3.4 運行測試 284
6.4 Nginx伺服器配置SSL證書 285
6.4.1 準備證書 285
6.4.2 配置證書 285
第7章 LAMP安全管理 287
7.1 Linux安全管理 287
7.1.1 安全登錄 288
7.1.2 用戶安全 296
7.1.3 日誌管理 297
7.1.4 安全審計 302
7.1.5 檔案系統的安全 305
7.1.6 系統資源控制 308
7.1.7 防火牆 309
7.2 Apache安全管理 310
7.2.1 指定Apache運行用戶 310
7.2.2 目錄許可權設定 311
7.2.3 隱藏伺服器的相關信息 314
7.2.4 日誌管理 316
7.3 MySQL安全管理 318
7.3.1 mysql_secure_installation 319
7.3.2 許可權安全 320
7.3.3 啟用SSL 321
7.4 PHP安全管理 326
7.4.1 禁用不必要的模組 326
7.4.2 限制PHP信息泄漏 327
7.4.3 將PHP錯誤記入日誌 329
7.4.4 禁用危險的PHP函式 329
第8章 計畫任務和作業調度 331
8.1 計畫任務 331
8.1.1 at命令 331
8.1.2 batch命令 335
8.1.3 Cron 335
8.1.4 Anacron 339
8.1.5 使用Cron實現網站備份 340
8.1.6 日誌切割 344
8.2 作業調度 350
8.2.1 準備測試程式 350
8.2.2 將作業暫停後放入後台 351
8.2.3 查看後台作業 351
8.2.4 繼續執行後台作業 352
8.2.5 將作業放在後台執行 352
8.2.6 將作業移到前台 352
8.2.7 終止前台作業 353
8.2.8 終止後台作業 353
第9章 Nginx入門 355
9.1 安裝Nginx 355
9.1.1 準備安裝環境 355
9.1.2 編譯和安裝Nginx 357
9.1.3 通過軟體包管理工具安裝Nginx 360
9.2 Nginx目錄與配置檔案 361
9.2.1 Nginx目錄結構及其說明 362
9.2.2 Nginx的配置檔案簡介 363
9.3 配置虛擬主機 371
9.3.1 配置基於域名的虛擬主機 371
9.3.2 配置基於IP的虛擬主機 375
9.3.3 配置基於連線埠的虛擬主機 377
9.4 Nginx性能最佳化 377
9.4.1 隱藏Nginx版本 377
9.4.2 最佳化CPU支持 379
9.4.3 事件處理模型 379
9.4.4 開啟高效傳輸模式 380
9.4.5 連線逾時時間 380
9.4.6 配置GZIP壓縮 381
9.4.7 最佳化快取配置 383
9.5 集成PHP 385
9.5.1 安裝PHP-FPM 385
9.5.2 集成Nginx和PHP 386
9.5.3 集成測試 388
第10章 深入Nginx 390
10.1 Nginx負載均衡 390
10.1.1 Nginx負載均衡簡介 390
10.1.2 輪詢模式負載均衡 392
10.1.3 權重模式負載均衡 394
10.1.4 IP位址哈希模式負載均衡 395
10.1.5 least_conn模式負載均衡 396
10.2 Nginx反向代理 396
10.2.1 反向代理的原理 396
10.2.2 反向代理模組 398
10.2.3 常規反向代理 400
10.2.4 基於虛擬目錄的反向代理 401
10.2.5 基於媒體類型的反向代理 406
10.2.6 基於upstream的反向代理 407
10.2.7 基於stream的反向代理 407
第11章 LAMP和LNMP性能監控 408
11.1 Linux常用監控命令 408
11.1.1 top命令 409
11.1.2 vmstat命令 412
11.1.3 tcpdump命令 414
11.1.4 netstat命令 417
11.1.5 htop命令 419
11.1.6 iotop命令 420
11.1.7 iptraf命令 421
11.1.8 iftop命令 422
11.1.9 lsof命令 423
11.2 Apache常用監控方法 426
11.2.1 mod_status模組 426
11.2.2 apachetop 428
11.3 MySQL常用監控方法 429
11.3.1 mytop命令 429
11.3.2 innotop命令 430
11.3.3 通過information_schema資料庫查詢MySQL的狀態 431
11.3.4 通過SHOW命令查詢MySQL的狀態 435
11.4 Nginx常用監控方法 436
11.4.1 stub_status_module模組 437
11.4.2 netstat命令 437
11.5 PHP-FPM常用監控方法 438
11.5.1 PHP-FPM狀態頁 438
11.5.2 netstat命令監控PHP-FPM 442
第12章 Zabbix全方位監控服務 443
12.1 Zabbix簡介 443
12.1.1 什麼是Zabbix 443
12.1.2 Zabbix的組件 444
12.2 安裝Zabbix 445
12.2.1 準備環境 445
12.2.2 安裝Zabbix 445
12.3 配置Zabbix監控服務 450
12.3.1 監控Linux系統 450
12.3.2 監控Apache伺服器 456
12.3.3 監控MySQL伺服器 460
12.3.4 監控Nginx伺服器 461

相關詞條

熱門詞條

聯絡我們