centos8 + nginx + php-fpm 基礎設定
好久沒碰相關的東西了,忽然想到就來練習並恢復一些記憶。
-
安裝好
centos8
安裝過程中記得預設把網路開啟,另外時區的部分需要的話就改成台北時區。
-
使用
root
帳號登入雖然都會建議多建立個使用者帳號然後加個
sudo
權限,不過這次就先直接用root
了。 -
使用
ip addr
確認主機位置安裝過程中的網路設定也可以確認。
-
換用習慣的client端登入
現在
windows10
有Windows Terminal
可以用了,自己沒什麼其他需求所以也就不用再額外安裝其他軟體了。 -
執行
yum install epel-release
安裝套件庫 -
執行
yum install vim htop tmux
安裝之後會用到的工具當下只想到這三個工具。
-
執行
yum update
更新系統 -
執行
yum install nginx php php-fpm
安裝http server和php環境有些人習慣自己編譯,身為初學者還是乖乖的用現成的吧。
基本上會動到的nginx的設定檔會是:
/etc/nginx/nginx.conf
/etc/nginx/conf.d/
至於
php
相關的設定則是:/etc/php.ini
/etc/php-fpm.conf
/etc/php-fpm.d/
-
檢查
/etc/php.ini
設定- memory_limit = 128M
- error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
- display_errors = Off
- date.timezone = Asia/Taipei
目前只記得這四個參數要稍微注意。
-
檢查
/etc/php-fpm.d/www.conf
- user = nginx
- group = nginx
- listen = /run/php-fpm/www.sock
- listen.owner = nginx
- listen.group = nginx
- listen.mode = 0660
- listen.allowed_clients = 127.0.0.1
- pm = dynamic
- pm.max_children = 50
- pm.start_servers = 5
- pm.min_spare_servers = 5
- pm.max_spare_servers = 35
主要是注意使用者和要不要用
unix socket
。 -
檢查
/etc/nginx/nginx.conf
- root路徑
- php location設定
其他細部調整就先不管了。
-
執行
systemctl restart php-fpm
、systemctl restart nginx
-
先使用
curl 127.0.0.1
確認是否有正常印出nginx初始頁面。 -
執行
firewall-cmd --zone=public --add-port=80/tcp --permanent
和firewall-cmd --reload
開啟80 port。當然可以直接跑
systemctl stop firewalld
整個關掉。 -
在內網其他主機使用瀏覽器開啟
http://__IP__/index.html
,確認是否正常 -
在
/usr/share/nginx/html/
新增phpinfo.php
vim /usr/share/nginx/html/phpinfo.php
- 內容為
<?php phpinfo();
-
在內網其他主機使用瀏覽器開啟
http://__IP__/phpinfo.php
,確認是否正常 -
確認
/var/log/nginx/access.log
是否有資料有時候真的會忙到亂掉,這種理所當然的確認真的很重要,反正也不花時間。
到這邊整個http server都正常了,php也可以正常執行,下次再試著把laravel
架起來看看。