centos怎麼部署php專案

2020-07-16 10:06:41

centos怎麼部署php專案?

CentOS 7部署PHP專案

目錄

一、安裝nginx(自動)

二、安裝mysql

三、修改mysql登入密碼

四、安裝PHP及擴充套件

五、設定nginx站點

六、專案測試部署

寫在前面:本文編輯伺服器檔案使用的是editplus工具

一、安裝nginx(自動)

新增nginx源

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

安裝nginx

yum install nginx

啟動nginx服務

systemctl start nginx.service    //啟動
systemctl enable nginx.service    //開機啟動

測試存取,如果可以看到nginx歡迎介面則說明安裝成功且能正常存取

二、安裝mysql

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm    //下載mysql源
rpm -ivh mysql-community-release-el7-5.noarch.rpm    //安裝mysql源
yum install mysql-community-server    //安裝mysql

啟動mysql服務

systemctl start mysqld    //啟動
systemctl enable mysqld    //開機啟動
systemctl daemon-reload    //開機啟動

三、修改mysql登入密碼

grep 'temporary password' /var/log/mysqld.log    //檢視臨時生成的密碼
mysql -uroot -p    //使用臨時密碼登入
> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼';    //修改密碼

四、安裝PHP及擴充套件

yum install php php-mysql php-fpm php-mbstring php-gd php-pear php-mhash php-eaccelerator  php-cli php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mssql php-snmp php-soap php-tidy php-common php-devel php-pecl-xdebug phpmyadmin php-mcrypt -y

編輯/etc/php.ini檔案,修改引數

cgi.fix_pathinfo=0

編輯/etc/php-fpm.d/www.conf檔案,修改引數

listen = /var/run/php-fpm/php-fpm.sock

啟動php-fpm服務

systemctl start php-fpm    //啟動
systemctl enable php-fpm.service    //開機啟動

五、設定nginx站點

修改/etc/nginx/conf.d/default.conf檔案,新增如下引數

server {
    listen       80;
    server_name  www.sange.com;    #需要修改用戶端hosts檔案
 
    root   /opt/data;    #PHP專案根路徑
    index index.php index.html index.htm;
 
    location / {
        try_files $uri $uri/ =404;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
 
    location ~ .php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

重新啟動nginx服務

systemctl restart nginx

六、專案測試部署

新建/opt/data/info.php檔案,開啟檔案編輯,新增

<?php phpinfo()?>

瀏覽器存取www.sange.com,可以看到php各種設定資訊則說明設定成功,如

當然,這只是為了測試一下環境而新建的一個簡單php檔案,當真正部署專案的時候,需要修改專案資料庫組態檔中使用者名稱跟密碼,匯入資料庫操作。在這種情況下,如果需要用戶端登入資料庫,伺服器的mysql需要設定允許遠端登入功能,授予使用者存取許可權。當瀏覽器存取需要連線資料庫時,預設情況下會遇到一個錯誤提示,那就是SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13)。

問題:SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (13)

原因:SELinux 不讓 httpd 存取外網

解決辦法:

getsebool -a | grep httpd    //檢視httpd狀態
setsebool httpd_can_network_connect 1     //允許外存取
systemctl restart mysqld.service    //重新啟動mysql服務

以上就是centos怎麼部署php專案的詳細內容,更多請關注TW511.COM其它相關文章!