1 |
# /usr/local/nginx/sbin/nginx |
2 |
/usr/local/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory |
從錯誤提示資訊可以得知是因為缺少lib檔案導致,進一步查看具體內容:
1 |
# ldd $(which /usr/local/nginx/sbin/nginx) |
2 |
libpthread.so.0 => /lib64/libpthread.so.0 (0x00000030e8400000) |
3 |
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000030f9a00000) |
4 |
libpcre.so.1 => not found |
5 |
libcrypto.so.6 => /lib64/libcrypto.so.6 (0x00000030f2a00000) |
6 |
libz.so.1 => /lib64/libz.so.1 (0x00000030e8800000) |
7 |
libc.so.6 => /lib64/libc.so.6 (0x00000030e7800000) |
8 |
/lib64/ld-linux-x86-64.so.2 (0x00000030e7400000) |
9 |
libdl.so.2 => /lib64/libdl.so.2 (0x00000030e8000000) |
查看結果顯示 : libpcre.so.1 => not found ,同時注意lib庫的路徑,有/lib/* 和 /lib64/* 之分。
比如上面的是 /lib64/*,這個和下面解決問題時建立的軟串連有關係
解決辦法:
1、首先確認已經安裝好pcre 軟體(nginx 依賴該軟體)
2、建立軟串連
對於/lib/* 32位系統來說:
6 |
# ln -s /lib/libpcre.so.0.0.1 /lib/libpcre.so.1 |
ps: 也有可能 pcre lib檔案在目錄:/usr/local/lib/
對於/lib64/* 64位系統來說:
2 |
# ls /lib64/ |grep pcre |
6 |
# ln -s /lib64/libpcre.so.0.0.1 /lib64/libpcre.so.1 |
ps: 也有可能 pcre lib檔案在目錄:/usr/local/lib64/。
以上就介紹了Nginx啟動錯誤:error while loading shared libraries: libpcreso1,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。