web環境搭建之Linux–nginx-php-mysql
環境:Linux CentsOs 6.7 32位
任務:搭建web環境:Linux–nginx-php-mysql
(1)安裝PHP包括一些附加件:
1
|
yum install php php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc
|
(2)安裝MySQL客戶端及伺服器:
1
2
3
4
5
6
7
8
9
10
11
|
yum -y install mysql #安裝客戶端 可以查詢一下 yum search mysql
yum install mysql-server #安裝伺服器
chkconfig --level 345 mysql on #設定mysql自啟動 可以不要
service mysqld start #開啟mysql服務
mysql_secure_installation #設定mysql使用者根據英文提示完成配置,需要給root使用者設定密碼,
#其他按需要設定,一般是回車到底 第一次使用mysql沒有密碼直接回車,然後會提示給root使用者設定 密碼,然後直接一直回車就OK了。 |
(3)安裝nginx:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#直接yum安裝需要更新一下yum源,方法及檔案如下: #1.在 /etc/yum.repos.d 資料夾下新建 nginx.repo 檔案 cd /etc/yum .repos.d
vim nginx.repo #新增以下內容 : [nginx] name=nginx repo baseurl=http: //nginx .org /packages/centos/ $releasever/$basearch/
gpgcheck=0 enabled=1 #檢視yum是否完成更新: yum list| grep nginx
返回內容(類似即可,版本不同可能會有差異): nginx.i386 1.10.1-1.el6.ngx @nginx nginx-debug.i386 1.8.0-1.el6.ngx nginx nginx-debuginfo.i386 1.10.1-1.el6.ngx nginx nginx-module-geoip.i386 1.10.1-1.el6.ngx nginx nginx-module-image-filter.i386 1.10.1-1.el6.ngx nginx nginx-module-njs.i386 1.10.1.0.0.20160414.1c50334fbea6-1.el6.ngx nginx
nginx-module-perl.i386 1.10.1-1.el6.ngx nginx nginx-module-xslt.i386 1.10.1-1.el6.ngx nginx nginx-nr-agent.noarch 2.0.0-9.el6.ngx nginx pcp-pmda-nginx.i686 3.10.9-6.el6 base #yum源更新完畢,開始安裝nginx yum install -y nginx
#安裝完成 |
(4)安裝 php-fpm 使nginx解釋php(說法不標準):
這個地方是最重要的地方,因為預設情況下Nginx和PHP他倆之間是一點感覺沒有的。在之前,很多朋友都搭建過Apache+PHP,Apache+PHP編譯後生成的是模組檔案,而Nginx+PHP需要PHP生成可執行檔案才可以,所以要利用fastcgi技術來實現Nginx與PHP的整合,這個只要我們安裝是啟用FastCGI即可。此次我們安裝PHP不僅使用了FastCGI,而且還使用了PHP-FPM這麼一個東東,PHP-FPM說白了是一個管理FastCGI的一個管理器,它作為PHP的外掛存在,在安裝PHP要想使用PHP-FPM時就需要把PHP-FPM以補丁的形式安裝到PHP中,而且PHP要與PHP-FPM版本一致,這是必須的,切記!
1
2
|
yum install -y php-fpm #有需要的可以先查詢下,yum search php-fpm
#可能需要更新解決依賴,yum會搞定...只需要看著安裝完成就可以了
|
(5)配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
1.配置 ngingx : # nginx 的配置檔案在 /etc/nginx/ 下 和 /etc/nginx/conf.d (1) /etc/nginx/ 檔案下的配置檔案是 nginx.conf
#該配置檔案不需要配置 #nginx.conf配置解釋:http://blog.csdn.net/tjcyjd/article/details/50695922 (2) /etc/nginx/conf .d 下的配置檔案 default.conf
cd /etc/nginx/conf .d
vim default.conf
server { listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html ;
index index.html index.htm;
#修改為:index index.html index.htm index.php;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x .html;
location = /50x .html {
root /usr/share/nginx/html ;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ .php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#nginx 不像Apache 它是將php檔案交給php執行才能正常顯示,通過上句可以它是通過 9000 埠發給PHP的 #
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /script $fastcgi_script_name;
#修改為:fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
#/usr/share/nginx/html 為php檔案所在地址 include fastcgi_params;
}
# deny access to .htaccess files, if Apache`s document root
# concurs with nginx`s one
#
#location ~ /.ht {
# deny all;
#}
} 2.配置php-fpm : #配置檔案為: /etc/php-fpm.conf 和 /etc/php-fpm.d/www.conf #因為其預設配置中監聽的埠為 9000 所以不需要修改,可以直接使用 |
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /script$fastcgi_script_name;
#修改為:fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
#/usr/share/nginx/html 為php檔案所在地址
include fastcgi_params;
}
(6)測試
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#在 /usr/share/nginx/html 下 #將自帶的 index.html 重新命名或者刪除 cd /usr/share/nginx/html
#重新命名: mv index.html index.html.bak
#刪除: rm -f index.html
#新建php檔案: vim index.php <?php phpinfo();
?> #開啟服務: service nginx restart service php-fpm restart #主機訪問:127.0.0.1 |
相關文章
- OROCOS之BFL(1)—— Linux環境搭建篇Linux
- Rust 之環境搭建Rust
- Web 前端環境搭建 Vue版Web前端Vue
- Linux搭建Java環境LinuxJava
- linux環境ftp搭建LinuxFTP
- linux搭建lamp環境LinuxLAMP
- Flutter(二)之環境搭建Flutter
- Docker 之 Nginx環境搭建DockerNginx
- Django之Ubuntu環境搭建DjangoUbuntu
- 使用 docker 搭建 web 服務環境DockerWeb
- Linux學習環境搭建Linux
- Linux搭建開發環境Linux開發環境
- Linux系統環境搭建Linux
- Linux(二十)搭建JavaEE環境LinuxJava
- Java部署環境搭建(Linux)JavaLinux
- linux 下搭建php環境LinuxPHP
- Linux下NDK環境搭建!Linux
- 排版環境搭建(Arch Linux)Linux
- (一)Linux環境的學習環境的搭建Linux
- Flutter指南之環境完整搭建Flutter
- 搭建 lnmp 環境之 nginx 篇LNMPNginx
- golang 入門之環境搭建Golang
- Mule 入門之:環境搭建
- web前端開發前的環境搭建Web前端
- linux開發環境搭建(ubuntu)Linux開發環境Ubuntu
- linux - java開發環境搭建LinuxJava開發環境
- linux環境下搭建個人微博Linux
- 程式碼稽核之搭建 SonarQube 環境
- 【Flutter】開發之環境搭建(一)Flutter
- Hadoop 基礎之搭建環境Hadoop
- SSM整合之CRUD環境搭建整合SSM
- Scala開發之1:環境搭建
- ionic開發環境搭建之ios開發環境iOS
- 環境搭建
- 個人網站搭建之伺服器環境搭建網站伺服器
- Linux搭建PHP+MySQL+Apache環境LinuxPHPMySqlApache
- 在linux下搭建wiki環境【轉】Linux
- Linux下原始碼搭建LAMP環境Linux原始碼LAMP