ローカルサーバー環境構築、Centos8+php7+laravel+nginxではまったw
はい~~、どうも~~~
というわけで、今回は、環境構築ネタで書いてみます。
以前、vagrant+php7+laravel+nginxを構築とかやってましたが、nginxのところで結構はまったので、書いておきます。
これ、Centos8の環境で、はまった点挙げておきます。
Centos8以下では、以下のファイルが設定されているわけです。
/var/run/php-fpm/php-fpm.sockこれですね。
これは、/etc/php-fpm.d/www.confの中に記載されているのですが、今まではこれでよかったわけです。
listen = /run/php-fpm/php-fpm.sock
もう一つにかかれているのは
centos8でやってると、次のエラーがはかれます。
2020/05/11 10:52:25 [crit] 6301#0: *1 connect() to unix:/run/php-fpm/www.sock failed (2: No such file or directory) while connecting to upstream, client: 10.0.2.2, server: _, request: "GET /laravel/public/ HTTP/1.1", upstream: "fastcgi://unix:/run/php-fpm/www.sock:", host: "localhost:8080"
そうです。
/run/php-fpm/www.sockがねーって言ってるわけです。
記載的には初めのでよかったのですが、今回から
listen = run/php-fpm/www.sock
と記載する必要がありました。
もう一か所、/etc/nginx/nginx.confで下の部分を書き換えました。
を
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
に変更、ソケット通信部分をソケット通すほうが早くないのかってことだそうで書き換えました。
内容は細かく書いていませんが、ご自分たちでやられて確認するほうが、身になると思います。
例)
server {
listen 80 default_server;
# listen [::]:8080 default_server;
listen localhost:8080 default_server;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
index index.php index.html;
}
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
#fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
ご参考までw
詳しく知りたければ、ネットでいろいろ調べられますので、検索してみてくださいね。
では、また。
to be continued.