❶ nginx編譯安裝需要哪些庫
如果有網的情況,不用管這些。進入你的nginx文件夾,進行以下操作:
通常至少需要以下庫:
pcre(正則) , gcc(C編譯器) , net-tools(使用netstat命令)。
一般有了上述的庫就能完成編譯,如果還不行,運行
./configure --prefix=你希望安裝到的目錄
命令,最下方提示error少了什麼庫,你就 yum -y install 庫名(錯誤的提示裡面)就可以自動下載安裝了。
❷ nginx的4核8個進程怎麼配置
源碼包可以在官方主頁上下載。Ubuntu 7.10可以直接通過apt安裝,也可以從這里下載最新的deb包: sudo apt-get install nginx 如果要自己編譯的話,需要確保自己已經有編譯器和PCRE的庫(用於Nginx的rewrite模塊,如果不需要這個模塊可以在configure時使用./configure –without-rewrite),編譯方法如下: wget sysoev.ru/nginx/nginx-0.5.34.tar.gz tar zxvf nginx-0.5.34.tar.gz cd nginx-0.5.34 ./configure #默認配置安裝路徑為/usr/local/nginx 可以追加--prefix=/usr設置到/usr make && make install # install要求有root許可權 Ubuntu安裝之後的文件結構大致為: 所有的配置文件都在/etc/nginx下,並且每個虛擬主機已經安排在了/etc/nginx/sites-available下 程序文件在/usr/sbin/nginx 日誌放在了/var/log/nginx中 並已經在/etc/init.d/下創建了啟動腳本nginx 默認的虛擬主機的目錄設置在了/var/www/nginx-default 而自己利用默認配置編譯的,則放在/usr/local/nginx下,以下是目錄結構: /usr/local/nginx/conf 配置目錄 /usr/local/nginx/html 默認的網站根目錄 /usr/local/nginx/logs 日誌和pid文件目錄 /usr/local/nginx/sbin 執行文件目錄 下面可以啟動nginx來看看效果(請確保80埠沒有其他服務在使用): Ubuntu請運行: sudo /etc/init.d/nginx start 其他請運行: /usr/local/nginx/sbin/nginx 然後就可以通過 localhost/來看看效果了。 要配置nginx的自動運行,可以將/usr/local/nginx/sbin/nginx添加到/etc/rc.local中,Ubuntu可以執行 update-rc.d nginx defaults 安裝php5 至於如何在Linux上安裝PHP,有很多文章,甚至很多平台上都有現成的軟體包,無需自己編譯。 PHP5的CGI方式的一大優勢是內置了FastCGI的支持,只需指明綁定的地址和埠參數便可以以FastCGI的方式運行,如下: php-cgi -b 127.0.0.1:9000 如何配置其與nginx一起運行呢? 配置Nginx的PHP FastCGI 請將以下內容保存為fastcgi_params文件,保存於/usr/local/nginx/conf下(Ubuntu可保存於/etc/nginx下),他為我們的FastCGI模塊設置了基本的環境變數: #fastcgi_params fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; # PHP only, required if PHP was built with --enable-force-cgi-redirect fastcgi_param REDIRECT_STATUS 200; 請特別注意」fastcgi_script_name」一行,PHP-CGI特別需要此行信息來確定PHP文件的位置。 另外需要在PHP-CGI的配置文件(Ubuntu 上此配置文件位於/etc/php5/cgi/php.ini)中,打開cgi.fix_pathinfo選項: cgi.fix_pathinfo=1; 這樣php-cgi方能正常使用SCRIPT_FILENAME這個變數。 接下來在nginx的配置中針對php文件配置其利用FastCGI進程來執行: server { index index.php; root /usr/local/nginx/html; location ~ .*.php$ { include /usr/local/nginx/conf/fastcgi_params; #請根據自己保存的路徑進行設置 fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; #請根據自己的FastCGI綁定的地址和埠進行配置 } } 通知Nginx重新載入配置: kill -HUP `cat /usr/local/nginx/logs/nginx.pid` Ubuntu用戶可以使用init腳本:sudo /etc/init.d/nginx reload 然後啟動php-cgi -b 127.0.0.1:9000 假設你在文檔根目錄放了index.php,並包含」phpinfo();」的內容,現在再看 localhost/index.php便應該能看到php的調試信息了。 配置php進程 直接使用php-cgi的FastCGI運行方式有兩個問題(貌似應該有解決方案,如果知道的話可以教教我): 1.如果進程崩潰,難以配置重新啟動 2.單進程的效率低