wsl安裝php nginx環境和phpredis擴充套件
阿新 • • 發佈:2020-12-09
wsl
wsl是可以在windows裡面執行linux的一個軟體。是微軟官方發行的。
安裝php
從php官網下載php tar包。
sudo wget https://www.php.net/distributions/php-7.4.12.tar.gz
然後解壓
sudo tar -zxvf php-7.4.12.tar.gz
接下來需要安裝一些擴充套件來支援php。
sudo apt-get install gcc make pkg-config libxml2-dev libssl-dev libsqlite3-dev libcurl4-openssl-dev libonig-dev zlib1g-dev libffi-dev libpng-dev libzip-dev
不安裝上面的擴充套件會導致接下來報錯。
切換目錄
cd ./php-7.4.12
執行configure,注意這裡prefix
一定要是/usr/local/php7,要不然找不到配置檔案php.ini。這裡有這個坑。
sudo ./configure --enable-fpm --with-mysql --with-pear --with-zip --enable-sockets --enable-soap --with-pdo-mysql --enable-gd --enable-ftp --with-ffi --with-zlib --with-curl --with-openssl --enable-mbstring --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7
執行完上面一步如果沒有錯誤就可以了。
接下來執行make
sudo make && sudo make install
建立軟連線或者環境變數。我們要配置全域性的環境變數有兩種方式。
- 在環境變數目錄裡面增加軟連線
- 把php目錄增加到環境變數裡面
我採用的是軟連線的方式。
sudo ln -s /usr/local/php7/bin/php /usr/local/bin/php
sudo ln -s /usr/local/php7/bin/phpize /usr/local/bin/phpize
sudo ln -s /usr/local/php7/sbin/php-fpm /usr/local/bin/php-fpm
接下來就可以全域性使用php命令了
php-fpm啟動,重啟方法
啟動
sudo php-fpm
重啟 先找到程序 然後傳送USR2
訊號
ps -aux | grep php
sudo kill -USR2 程序id
安裝nginx
訪問nginx的進行下載。
複製下載地址。比如我下載的1.19.5,直接下載
sudo wget https://nginx.org/download/nginx-1.19.5.tar.gz
然後解壓
sudo tar -zxvf nginx-1.19.5.tar.gz
接下來需要安裝一些擴充套件來支援php。
sudo apt-get install libpcre3 libpcre3-dev
切換目錄
cd ./nginx-1.19.5
執行安裝
sudo ./configure --prefix=/usr/local/src/nginx
sudo make && sudo make install
好了,安裝完成。
同意,建立軟連線。
sudo ln -s /usr/local/src/nginx/sbin/nginx /usr/local/bin/nginx
接下來啟動nginx看看效果
sudo nginx
訪問localhost就可以看到效果了。
配置網站
接下來配置一下網站。
修改nginx.conf
sudo vim /usr/local/src/nginx/conf/nginx.conf
在http塊裡面加上這句話,引入其他的配置檔案
include conf.d/*.conf;
然後我們建立這個目錄
sudo mkdir /usr/local/src/nginx/conf/conf.d
配置我們的網站檔案
sudo vim /usr/local/src/nginx/conf/conf.d/test.com.conf
複製下面內容
server {
listen 80;
server_name test.com;
root "/home/wwwroot/test/public/";
location / {
index index.php index.html error/index.html;
autoindex off;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
location ~ \.php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
}
在修改hosts檔案就好了。
redis擴充套件
如果要裝redis擴充套件,那麼手動下載
http://pecl.php.net/package/redis
找到tar包下載
sudo wget http://pecl.php.net/get/redis-5.3.2.tgz
解壓縮
sudo tar -zxvf redis-5.3.2.tgz
進去執行phpize
cd ./redis-5.3.2
sudo phpize
然後編譯
sudo ./configure --with-php-config=/usr/local/php7/bin/php-config
sudo make && sudo make install
接下來會出現下面的目錄
/usr/local/php7/lib/php/extensions/no-debug-non-zts-20190902
修改我們的php.ini
sudo vim /usr/local/php7/lib/php.ini
修改下面這個
extension_dir=/usr/local/php7/lib/php/extensions/no-debug-non-zts-20190902
增加redis擴充套件
extension="redis.so"
重啟nginx和php-fpm就好了。