一. MySQL安裝與配置
1. 配置yum源php
# 更新yum源css
yum update
# 下載mysql源安裝包html
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
# 安裝mysql源 mysql
yum localinstall mysql57-community-release-el7-8.noarch.rpm
# 檢查mysql源是否安裝成功linux
yum repolist enabled | grep "mysql.*-community.*"
2. 安裝MySQLnginx
yum install mysql-community-server
3. 啓動MySQL
# 啓動MySQL服務sql
systemctl start mysqld
# 查看MySQL的啓動狀態thinkphp
systemctl status mysqld
# 設置MySQL開機啓動centos
systemctl enable mysqld systemctl daemon-reload
4. 修改root默認密碼安全
# 找到root默認密碼
grep 'temporary password' /var/log/mysqld.log
# 進入mysql控制檯, 輸入上述查詢到的默認密碼
mysql -uroot -p
# 設置root管理員的密碼
set password for 'root'@'localhost'=password('PassWord123@');
5.添加遠程登陸用戶
默認只容許root賬戶在本地登陸,若是要在其它機器上鍊接mysql,必須修改root容許遠程鏈接,或者添加一個容許遠程鏈接的賬戶
# 添加遠程賬戶
GRANT ALL PRIVILEGES ON *.* TO 'yourname'@'%' IDENTIFIED BY 'YourPassword@123' WITH GRANT OPTION;
6. 配置默認編碼爲utf8
修改配置文件 /etc/my.cnf,添加下面兩行, utf8編碼配置
character_set_server=utf8 init_connect='SET NAMES utf8'
二. PHP環境配置
1. 安裝 php 和 php-fpm
# 首先安裝epel
yum -y install epel-release
# 安裝php php-fpm
yum -y install php php-fpm
# 查看php版本
php -v
2. 安裝php-mysql
yum install php-mysql
3. 設置php-fpm開機自動啓動
systemctl enable php-fpm
4. 啓動php-fpm
systemctl start php-fpm
三. Nginx安裝與配置
一、添加源
默認狀況Centos7中無Nginx的源,最近發現Nginx官網提供了Centos的源地址。所以能夠以下執行命令添加源:
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
二、安裝Nginx
經過yum search nginx看看是否已經添加源成功。若是成功則執行下列命令安裝Nginx。
sudo yum install -y nginx
三、啓動Nginx並設置開機自動運行
sudo systemctl start nginx.service sudo systemctl enable nginx.service
# nginx 配置訪問項目目錄並支持 PHP 的 pathinfo 模式配置
修改 /etc/nginx/conf.d/default.conf server { #偵聽80端口 listen 80; index index.php index.html index.htm; #設定本虛擬主機的訪問日誌 server_name localhost; root /var/www/blog/public; #rewrite_log on; #access_log logs/hc-admin.access.log main; #error_log logs/hc-admin.access.log main; location ~ .*\.(gif|jpg|jpeg|bmp|png|ico|txt|js|css|ttf|woff|woff2)$ { root /var/www/blog/public; } location / { index index.htm index.html index.php; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } } location ~ \.php/?.*$ { root /var/www/blog/public; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; #加載Nginx默認"服務器環境變量"配置 #include fastcgi.conf; include fastcgi_params; set $fastcgi_script_name2 $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") { set $fastcgi_script_name2 $1; set $path_info $2; } fastcgi_param PATH_INFO $path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name2; fastcgi_param SCRIPT_NAME $fastcgi_script_name2; } } 配置ssl 先把監聽端口換掉 並打開ssl 而後添加ssl證書 地址按照本身的位置修改 listen 443; ssl on; #證書地址 ssl_certificate /etc/nginx/server.crt; ssl_certificate_key /etc/nginx/server.key; ssl_session_timeout 5m;
經常使用指令
mysql
systemctl start mysqld # 啓動
systemctl stop mysqld # 中止
systemctl restart mysqld # 重啓
php-fpm
systemctl start php-fpm # 啓動
systemctl stop php-fpm # 中止
systemctl restart php-fpm # 重啓
nginx
sudo fuser -k 80/tcp # 殺死80端口
/usr/local/nginx/sbin/nginx # 開啓
/usr/local/nginx/sbin/nginx -s stop # 中止
/usr/local/nginx/sbin/nginx -s reopen # 重啓
/usr/local/nginx/sbin/nginx -s reload # 從新載入配置文件
其餘問題
1. 關閉SELINUX(SELINUX是一個安全子系統,它能控制程序只能訪問特定文件。若是不關閉,你可能訪問文件受限):
vi /etc/selinux/config #SELINUX=enforcing # 註釋掉 #SELINUXTYPE=targeted # 註釋掉 SELINUX=disabled # 增長 :wq! # 保存退出 shutdown -r now # 重啓系統
2. thinkphp 提示錯誤目錄 [ ./Runtime/ ] 不可寫!
chmod 777 -R /var/www/xxx項目目錄/Application/Runtime