Rumah >Operasi dan penyelenggaraan >Nginx >Analisis contoh pemasangan Nginx dalam Linux
Gunakan kaedah sumber binari sistem untuk memasang
pada sistem ubuntu/debian
sudo apt-get install nginx
atau sistem redhat/centos
sudo yum install nginx
Kaedahnya adalah cara yang paling mudah dan cepat, tetapi ia bukan cara yang terbaik. Mari kita bincangkan masalah utama ini di bawah.
Kelebihan
Semua kebergantungan binari pemasangan telah diuruskan, tidak perlu risau tentang isu keserasian, ia boleh digunakan daripada box
Anda tidak perlu berurusan dengan konfigurasi sambungan dan kebenaran pengguna nginx, kami telah menulis ini untuk anda
Don 'Jangan risau tentang penyelenggaraan pepijat nginx dan naik taraf, dapatkan sistem terkini secara langsung Itu sahaja
Penyahpasangan adalah mudah, hanya satu arahan
Penyelenggaraan log adalah mudah, log hari itu secara automatik dipotong, dimampatkan dan disimpan
Kelemahan
Tidak boleh memilih versi yang dipasang secara bebas
Tidak boleh memilih modul yang disusun secara bebas
Ia menjadi sangat menyusahkan untuk melanjutkan fungsi dan perlu dikompilasi semula
Struktur kategori adalah kompleks, fail konfigurasi berada di bawah /etc/ dan fail penempatan berada di bawah /var/www
Memulakan semula perkhidmatan dan mengubah suai konfigurasi memerlukan kebenaran root
Prestasinya lebih teruk. Susun dan pasang
Jika anda seorang pemula Linux, pastinya disyorkan untuk menggunakan kaedah pemasangan ini. Anda tidak perlu mempertimbangkan kebergantungan kompilasi Anda boleh menggunakannya terus selepas pemasangan. Tetapi jika pelayan anda digunakan dalam persekitaran pengeluaran dan sedang dibangunkan dan dipertingkatkan secara beransur-ansur, kaedah ini tidak disyorkan. Modul pihak ketiga boleh ditambah pada masa hadapan, dan ia mesti disusun dan dipasang pada masa itu (dibincangkan di bawah). Apabila memulakan semula pelayan, jangan gunakan pengguna root, tetapi gunakan sudo untuk mendapatkan root secara ringkas. Jika pelayan anda digunakan untuk menggunakan beberapa fail statik, terutamanya untuk beberapa ruang web, dan biasanya menggunakan alat ftp untuk menggunakan fail, pasti tiada masalah dengan kaedah ini.
Kompilasi dan pasang
Saya tidak akan menulis tentang kebaikan dan keburukan, pada dasarnya hanya membalikkan perkara di atas. Untuk memasang menggunakan kaedah ini, anda mesti mengetahui sedikit pengetahuan tentang kompilasi Linux, dan hanya pengguna Linux sederhana boleh mengawalnya. Saya melihat bahawa kebanyakan tutorial di Internet memasang kebergantungan kompilasi secara langsung dalam /usr/local/. Jika kami ingin menyahpasang kebergantungan ini pada masa hadapan, kami akan mendapati ia sangat menyusahkan. Anda tidak boleh memadamnya terus di bawah kategori Sesetengah pengedaran Linux akan menulis fail pemasangan ke dalam fail konfigurasi Saya tidak tahu di mana untuk mencari fail konfigurasi ini. Jika versi bergantung menjejaskan perisian lain, cara menangani isu versi. Kami hanya mahu memasang nginx, tetapi ia menyebabkan banyak masalah.
Persediaan persekitaran kompilasi
Sebelum anda memulakan, pastikan Linux anda mempunyai gcc, make, wget, g++ dan perisian lain.
Buat kategori untuk menyimpan fail yang dimuat turun, masukkan direktori untuk memuat turun fail sumber perpustakaan bergantung
Muat turun openssl digunakan terutamanya untuk penyulitan modul ssl, menyokong https
wget https://www.openssl.org/source/openssl-1.0.2s.tar.gz
Muat turun pcre untuk melaksanakan sokongan untuk pengalihan alamat, fungsi penulisan semula alamat dan arahan penyetempatan dan ungkapan biasa
wget https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
Muat turun modul pemampatan zlib gzip
wget https://zlib.net/zlib-1.2.11.tar.gz
Muat turun nginx
wget http://nginx.org/download/nginx-1.17.1.tar.gz
Gunakan tar untuk menyahmampat semua fail
ls *.tar.gz | xargs -n1 tar xzvf
Pilihan kompilasi
Gunakan skrip ./configure untuk menetapkan pelbagai parameter nginx, termasuk laluan ke sumber dan fail konfigurasi , pilihan pengkompil , kaedah pengendalian pautan dan senarai modul. Skrip melakukan ini dengan mencipta makefiles yang diperlukan untuk menyusun kod dan memasang sumber terbuka nginx.
参数 | 描述 |
---|---|
–prefix=98953a78f52873edae60a617ec082494 | nginx安装目录,以及有其他配置脚本选项的路径设置的所有相对路径的基本位置。默认值/usr/local/nginx |
–sbin-path=7988e5ef09cb060996e437e0d2342881/sbin/nginx | |
–conf-path=98953a78f52873edae60a617ec082494 | nginx配置文件的名称。但是,您可以通过在nginx命令行上使用选项指定其他文件来始终在启动时覆盖此值。默认值:aac119f8a3a563a827b4e4c50481b4e7 conf / nginx.conf-c 2334ac29606bf8a170583e4f7533b1f4 |
–pid-path=98953a78f52873edae60a617ec082494 | nginx.pid文件的名称,用于存储nginx主进程的进程id 。安装后,可以使用nginx配置文件中的pid指令更改文件名的路径。默认值:aac119f8a3a563a827b4e4c50481b4e7 /logs/nginx.pid |
–error-log-path=98953a78f52873edae60a617ec082494 | error,warn和诊断数据的日志文件的名称。安装后,可以使用nginx配置文件中的error_log指令更改文件名。默认值:aac119f8a3a563a827b4e4c50481b4e7 /logs/error.log |
–http-log-path=98953a78f52873edae60a617ec082494 | http服务器请求的主日志文件的名称。安装后,始终可以使用nginx配置文件中的access_log指令更改文件名。默认值:aac119f8a3a563a827b4e4c50481b4e7 /logs/access.log |
–user=8a11bc632ea32a57b3e3693c7987c420 | nginx运行进程的拥有者。安装后,可以使用nginx配置文件中的user指令更改名称。默认:nobody |
–group=name | nginx运行进程的拥有者用户组。安装后,可以使用nginx配置文件中的user指令更改名称。默认值:–user选项设置的值 |
–with-pcre=98953a78f52873edae60a617ec082494 | pcre库源代码的路径,这是位置指令和rewrite模块中正则表达式支持所必需的 |
–with-pcre-jit | 使用“即时编译”支持(pcre_jit指令)构建pcre库 |
–with-zlib=98953a78f52873edae60a617ec082494 | zlib库的源代码路径,gzip模块需要该路径 |
–with-http_ssl_modul | 启用https支持 |
–with-http_v2_module | 开启 http/2请求支持 |
还要太多编译参数我就不一一列举,有兴趣的同学可以自己去
参看
编译安装
./configure \ --with-openssl=../openssl-1.0.2s \ --with-pcre=../pcre-8.43 \ --with-zlib=../zlib-1.2.11 \ --with-pcre-jit --user=admin \ --prefix=/home/admin/nginx \ --with-http_ssl_module \ --with-http_v2_module
输出以下信息,说明依赖没问题
configuration summary + using pcre library: ../pcre-8.43 + using openssl library: ../openssl-1.0.2s + using zlib library: ../zlib-1.2.11 nginx path prefix: "/home/admin/nginx" nginx binary file: "/home/admin/nginx/sbin/nginx" nginx modules path: "/home/admin/nginx/modules" nginx configuration prefix: "/home/admin/nginx/conf" nginx configuration file: "/home/admin/nginx/conf/nginx.conf" nginx pid file: "/home/admin/nginx/logs/nginx.pid" nginx error log file: "/home/admin/nginx/logs/error.log" nginx http access log file: "/home/admin/nginx/logs/access.log" nginx http client request body temporary files: "client_body_temp" nginx http proxy temporary files: "proxy_temp" nginx http fastcgi temporary files: "fastcgi_temp" nginx http uwsgi temporary files: "uwsgi_temp" nginx http scgi temporary files: "scgi_temp"
编译
make
安装
make install
设置权限
因为linux设置普通用户,不能占用1024一下的端口,直接启动nginx会出现权限不足的错误。将nginx分配给root用户,在分配特殊权限。
sudo chown root nginx sudo chmod u+s nginx
Atas ialah kandungan terperinci Analisis contoh pemasangan Nginx dalam Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!