狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

利用Nginx替代apache實(shí)現(xiàn)高性能的Web環(huán)境

admin
2012年4月3日 23:29 本文熱度 3056
利用Nginx替代apache實(shí)現(xiàn)高性能的Web環(huán)境           
                                                                         更新時(shí)間:2007-11-27
作者:NetSeek                      歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明出處: http://bbs.linuxpk.com
原文鏈接:http://bbs.linuxpk.com/thread-11845-1-1.html
     
Nginx介紹:
Nginx發(fā)音為[engine x],是由俄羅斯人Igor Sysoev建立的項(xiàng)目,基于BSD許可。
據(jù)說他當(dāng)初是F5的成員之一,英文主頁:http://nginx.net。俄羅斯的一些大網(wǎng)站已經(jīng)使用它超過兩年多了, 一直表現(xiàn)不凡,相信想了解nginx的朋友都讀過阿葉大哥的利用nginx實(shí)現(xiàn)負(fù)載均衡的文章相關(guān)鏈接見(六)。
  
測試環(huán)境:紅動中國(redocn)提供運(yùn)營服務(wù)器環(huán)境.

關(guān)于紅動服務(wù)環(huán)境:
紅動中國在早期利用apache環(huán)境,再加上一些優(yōu)化的工作,一直是相對很穩(wěn)定,但是最近由于網(wǎng)站發(fā)展,訪問量越來越大,在線人數(shù)一多經(jīng)常出現(xiàn),負(fù)載過高,性能急劇下降,經(jīng)過雙木站長的同意,考慮是否能利用nginx來代替apache,經(jīng)過長時(shí)間的觀察目前nginx工作很穩(wěn)定,系統(tǒng)也不會再說現(xiàn)高負(fù)載的狀況,占用內(nèi)存也很低,訪問速率從用戶體驗(yàn)來看明顯有提升.


關(guān)于紅動中國:
紅動中國(redocn)論壇經(jīng)過近1年的快速發(fā)展,目前日均頁面訪問量超過100萬,位居全球設(shè)計(jì)論壇(中文)第1位,是國內(nèi)最具影響力的設(shè)計(jì)論壇之一。目前論壇擁有近20萬會員,包括眾多設(shè)計(jì)界領(lǐng)軍人物在內(nèi)的行業(yè)中堅(jiān)力量、相關(guān)藝術(shù)院校師生以及部分設(shè)計(jì)愛好者等。
   
遷移目標(biāo):實(shí)現(xiàn)網(wǎng)站論壇靜態(tài)化,防盜鏈,下載并發(fā)數(shù)和速率限制,實(shí)現(xiàn)原站apache所具有的所有功能,將原apache環(huán)境下的站點(diǎn)全部遷移到Nginx
  
一.PHP(Fastcgi)編譯安裝
[root@att php-5.2.4]# cat in.sh



  1. ./configure \

  2.         --prefix=/usr/local/php-fcgi \

  3.         --enable-fastcgi \

  4.         --enable-discard-path \

  5.         --enable-force-cgi-redirect \

  6.         --with-config-file-path=/usr/local/php-fcgi/etc \

  7.         --enable-zend-multibyte \

  8.         --with-mysql=/usr/local/mysql \

  9.         --with-libxml-dir=/usr/local/libxml2 \

  10.         --with-gd=/usr/local/gd2 \

  11.         --with-jpeg-dir \

  12.         --with-png-dir \

  13.         --with-bz2 \

  14.         --with-freetype-dir \

  15.         --with-iconv-dir \

  16.         --with-zlib-dir  \

  17.         --with-openssl=/usr/local/openssl \

  18.         --with-mcrypt=/usr/local/libmcrypt \

  19.         --enable-sysvsem \

  20.         --enable-inline-optimization \

  21.         --enable-soap \

  22.         --enable-gd-native-ttf \

  23.         --enable-ftp \

  24.         --enable-mbstring \

  25.         --enable-exif \

  26.         --disable-debug \

  27.         --disable-ipv6



  28.       

  29. make

  30. make install

  31. cp php.ini-dist /usr/local/php-fcgi/etc/php.ini
復(fù)制代碼
注:關(guān)于如何安裝gd庫,mysql的編譯安裝,本文將不介紹,本文重點(diǎn)在于介紹nginx的安裝與配置,如想了解其它相關(guān)的問題可以到
LinuxPk去找相關(guān)的貼子(http://bbs.linuxpk.com)

二.Nginx編譯安裝
1.創(chuàng)建nginx運(yùn)行用戶和虛擬主機(jī)目錄



  1. groupadd www -g 48

  2. useradd -u 48 -g www www

  3. mkdir -p /data/www/wwwroot

  4. chown -R www:www /data/www/wwwroot
復(fù)制代碼
2.安裝lighttpd中附帶的spawn-fcgi,用來啟動php-cgi
先編譯安裝lighttpd產(chǎn)生spawn-fcgi二進(jìn)制文件.



  1. cd /usr/local/src/lighttpd-1.4.18

  2. cp src/spawn-fcgi /usr/local/php-fcgi/bin/
復(fù)制代碼
啟動php-cgi進(jìn)程,監(jiān)聽127.0.0.1的8085端口,進(jìn)程數(shù)為250(如果服務(wù)器內(nèi)存小于3GB,可以只開啟25個(gè)進(jìn)程),用戶為www:
/usr/local/php-fcgi/bin/spawn-fcgi -a 127.0.0.1 -p 8085 -C 250 -u www -f /usr/local/php-fcgi/bin/php-cgi

3.nginx的安裝與配置
  安裝Nginx所需的pcre庫:
  http://ftp.dk.debian.org/exim/pcre/pcre-7.3.tar.gz



  1.   tar zxvf pcre-7.2.tar.gz

  2.   cd pcre-7.2/

  3.   ./configure

  4.   make && make install

  5.   cd ../



  6.   http://sysoev.ru/nginx/nginx-0.5.32.tar.gz

  7.   tar zxvf nginx-0.5.32.tar.gz

  8.   cd  nginx-0.5.32

  9. ./configure --user=www --group=www --prefix=/usr/local/nginx/ --with-http_stub_status_module --with-



  10. openssl=/usr/local/openssl

  11. make && make install

復(fù)制代碼
此模塊非核心模塊,需要在編譯的時(shí)候手動添加編譯參數(shù) --with-http_stub_status_module
  配置nginx

三.Nginx主配置文件及PHP支持.

1.nginx.conf 主配置文件的配置
#cd /usr/local/nginx/conf/
#cp  nginx.conf nginx.conf.cao
#cat /dev/null > nginx.conf
#vi nginx.conf       //主配置文件
[code
user  www www;

worker_processes 10;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

pid        /var/run/nginx.pid;

#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200;

events
{
       use epoll;

       #maxclient = worker_processes * worker_connections / cpu_number
       worker_connections 51200;
}

http
{
       include       conf/mime.types;
       default_type  application/octet-stream;

       log_format  main  '$remote_addr - $remote_user [$time_local] $request '
                         '"$status" $body_bytes_sent "$http_referer" '
                         '"$http_user_agent" "$http_x_forwarded_for"';

       #access_log  /data/www/logs/access.log  main;
       #sendfile on;
       tcp_nopush     on;
       tcp_nodelay    off;

       keepalive_timeout 60;
   
       client_header_timeout  3m;
       client_body_timeout    3m;
       send_timeout           3m;
       connection_pool_size        256;
       client_header_buffer_size    1k;
       large_client_header_buffers    4 2k;
       request_pool_size        4k;
       output_buffers   4 32k;
       postpone_output  1460;
       client_max_body_size       10m;
       client_body_buffer_size    256k;
       client_body_temp_path /dev/shm/client_body_temp;
       proxy_temp_path            /usr/local/nginx/proxy_temp;
       fastcgi_temp_path          /usr/local/nginx/fastcgi_temp;
     
       #gzip
       gzip on;
       gzip_http_version 1.0;
       gzip_comp_level 2;
       gzip_proxied any;
       gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
       gzip_min_length 1100;
       gzip_buffers 4 8k;
      
       # The following includes are specified for virtual hosts   //以下是加載虛擬主機(jī)配置.
       #www.redocn.com
       include          conf/vhosts/www_redocn_com.conf;
       #bbs.redocn.com
       include          conf/vhosts/bbs_redocn_com.conf;
       #blog.redocn.com
       include          conf/vhosts/blog_redocn_com.conf;
       #down.redocn.com
       include          conf/vhosts/down_redocn_com.conf;
}[/code]

2.配置支持Fastcgi模式的PHP
[root@redocn conf]# cat enable_php5.conf



  1. fastcgi_pass  127.0.0.1:8085;

  2. fastcgi_index index.php;



  3. fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;

  4. fastcgi_param  SERVER_SOFTWARE    nginx;

  5. #new ac upload

  6. #fastcgi_pass_request_body off;

  7. #client_body_in_file_only clean;

  8. #fastcgi_param  REQUEST_BODY_FILE  $request_body_file;

  9. #



  10. fastcgi_param  QUERY_STRING       $query_string;

  11. fastcgi_param  REQUEST_METHOD     $request_method;

  12. fastcgi_param  CONTENT_TYPE       $content_type;

  13. fastcgi_param  CONTENT_LENGTH     $content_length;



  14. fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

  15. fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;

  16. fastcgi_param  REQUEST_URI        $request_uri;

  17. fastcgi_param  DOCUMENT_URI       $document_uri;

  18. fastcgi_param  DOCUMENT_ROOT      $document_root;

  19. fastcgi_param  SERVER_PROTOCOL    $server_protocol;



  20. fastcgi_param  REMOTE_ADDR        $remote_addr;

  21. fastcgi_param  REMOTE_PORT        $remote_port;

  22. fastcgi_param  SERVER_ADDR        $server_addr;

  23. fastcgi_param  SERVER_PORT        $server_port;

  24. fastcgi_param  SERVER_NAME        $server_name;



  25. # PHP only, required if PHP was built with --enable-force-cgi-redirect

  26. fastcgi_param  REDIRECT_STATUS    200;
復(fù)制代碼
四,多虛擬主機(jī)應(yīng)用配置案例.

#mkdir /usr/local/nginx/conf/vhosts         //建立虛擬主機(jī)配置存放目錄.
1.www.redocn.com                            //首站配置
[root@redocn vhosts]#vi www_redocn_com.conf



  1. server

  2.        {

  3.                listen       80;

  4.                server_name  www.redocn.com;

  5.                index index.html index.htm index.php;

  6.                root  /data/www/wwwroot;

  7.                error_page 404 http://bbs.redocn.com;

  8.                rewrite ^/bbs/(.*) http://bbs.redocn.com/$1;

  9.                location ~ .*\.php?$

  10.                {

  11.                        include conf/enable_php5.conf;

  12.                }

  13.        }
復(fù)制代碼
注: 關(guān)于rewite需求,紅動中國希望當(dāng)用戶訪問http://www.redocn.com/bbs的時(shí)候自動轉(zhuǎn)至http://bbs.redocn.com
在原apache中利用redirect實(shí)現(xiàn)  
Redirect /bbs http://bbs.redocn.com

本文中在nginx下利用rewrite實(shí)現(xiàn):
rewrite ^/bbs/(.*) http://bbs.redocn.com/$1;


2.[root@redocn vhosts] vi bbs_redocn_com.conf



  1. server

  2.        {

  3.                listen       80;

  4.                server_name  bbs.redocn.com yan.redocn.com majia.redocn.com wt.redocn.com;

  5.                index index.html index.htm index.php;

  6.                root  /home/www/htdocs/bbs;

  7.                access_log /var/log/nginx/access_bbs.redocn.com.log  combined;

  8.                location / {

  9.                #bbs rewrite

  10.                          rewrite ^/archiver/((fid|tid)-[\w\-]+\.html)[code] server

  11.        {

  12.                listen       80;

  13.                server_name  bbs.redocn.com yan.redocn.com majia.redocn.com wt.redocn.com;

  14.                index index.html index.htm index.php;

  15.                root  /home/www/htdocs/bbs;

  16.                access_log /var/log/nginx/access_bbs.redocn.com.log  combined;

  17.                location / {

  18.                #bbs rewrite

  19.                          rewrite ^/archiver/((fid|tid)-[\w\-]+\.html)[        DISCUZ_CODE_17        ]nbsp;  /archiver/index.php?$1 last;

  20.                          rewrite ^/forum-([0-9]+)-([0-9]+)\.html[        DISCUZ_CODE_17        ]nbsp;  /forumdisplay.php?fid=$1&page=$2 last;

  21.                          rewrite ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html[        DISCUZ_CODE_17        ]nbsp; /viewthread.php?tid=$1&extra=page\%3D$3&page=$2 last;

  22.                          rewrite ^/space-(username|uid)-(.+)\.html[        DISCUZ_CODE_17        ]nbsp;  /space.php?$1=$2 last;

  23.                          rewrite ^/tag-(.+)\.html$ /tag.php?name=$1 last;

  24.                          break;

  25.                #error

  26.                error_page 404 /index.php;

  27.                #redirect server error pages to the static page /50x.html

  28.                error_page   500 502 503 504  /50x.html;

  29.                location = /50x.html {

  30.                 root   html;

  31.                   }

  32.                          }

  33.                #Preventing hot linking of images and other file types

  34.                location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip)$ {

  35.                        valid_referers none blocked server_names

  36.                               *.redocn.com redocn.com *.taobao.com taobao.com

  37.                               bbs.blueidea.com bbs.asiaci.com bbs.arting365.com forum.chinavisual.com softbbs.pconline.com.cn

  38.                               bbs.chinaddu.com bbs.photops.com *.baidu.com *.google.com *.google.cn *.soso.com *.yahoo.com.cn

  39.                               *.yahoo.cn;

  40.                if ($invalid_referer) {

  41.                 rewrite   ^/   http://www.redocn.com/images/redocn.gif;

  42.                 #return   403;

  43.                                      }

  44.     }

  45.      

  46.                #support php

  47.                location ~ .*\.php?$

  48.                {

  49.                        include conf/enable_php5.conf;

  50.                }

  51.          

  52.        }
復(fù)制代碼
nbsp;  /archiver/index.php?$1 last;
                         rewrite ^/forum-([0-9]+)-([0-9]+)\.html[        DISCUZ_CODE_17        ]nbsp;  /forumdisplay.php?fid=$1&page=$2 last;
                         rewrite ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html[        DISCUZ_CODE_17        ]nbsp; /viewthread.php?tid=$1&extra=page\%3D$3&page=$2 last;
                         rewrite ^/space-(username|uid)-(.+)\.html[        DISCUZ_CODE_17        ]nbsp;  /space.php?$1=$2 last;
                         rewrite ^/tag-(.+)\.html$ /tag.php?name=$1 last;
                         break;
               #error
               error_page 404 /index.php;
               #redirect server error pages to the static page /50x.html
               error_page   500 502 503 504  /50x.html;
               location = /50x.html {
                root   html;
                  }
                         }
               #Preventing hot linking of images and other file types
               location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip)$ {
                       valid_referers none blocked server_names
                              *.redocn.com redocn.com *.taobao.com taobao.com
                              bbs.blueidea.com bbs.asiaci.com bbs.arting365.com forum.chinavisual.com softbbs.pconline.com.cn
                              bbs.chinaddu.com bbs.photops.com *.baidu.com *.google.com *.google.cn *.soso.com *.yahoo.com.cn
                              *.yahoo.cn;
               if ($invalid_referer) {
                rewrite   ^/   http://www.redocn.com/images/redocn.gif;
                #return   403;
                                     }
    }
     
               #support php
               location ~ .*\.php?$
               {
                       include conf/enable_php5.conf;
               }
         
       }[/code]注:
1.紅動中國采用高性能的Discuz!論壇,原apache的rewrite規(guī)則幾乎不要做什么修改即可全部移植到nginx下.
靜態(tài)化配置見面上面的:#bbs rewrite部分.
2.一般論壇都希望實(shí)現(xiàn)防盜鏈功能,在apache很輕松實(shí)現(xiàn)?在nginx下是否容易實(shí)現(xiàn)呢?答案是肯定的.



  1.          #Preventing hot linking of images and other file types

  2.                      valid_referers none blocked server_names *.redocn.com redocn.com ...你允許連接的網(wǎng)址;

  3.                if ($invalid_referer) {

  4.                 rewrite   ^/   http://www.redocn.com/images/redocn.gif;  //讓別人盜鏈時(shí)顯示你指定的圖片.

  5.                 #return   403;

  6.                                      }
復(fù)制代碼
3.blog.redocn.com
[root@redocn vhosts]#vi blog_redocn_com.conf



  1. server

  2.        {

  3.                listen       80;

  4.                server_name  blog.redocn.com;

  5.                index index.html index.htm index.php;

  6.                root  /data/www/wwwroot/blog;

  7.                error_page 404 http://bbs.redocn.com;

  8.                #supsite rewrite

  9.                rewrite ^([0-9]+)/spacelist(.*)$ index.php?$1/action_spacelist$2;

  10.                rewrite ^([0-9]+)/viewspace_(.+)$ index.php?$1/action_viewspace_itemid_$2;

  11.                rewrite ^([0-9]+)/viewbbs_(.+)$ index.php?$1/action_viewbbs_tid_$2;

  12.                rewrite ^([0-9]+)/(.*)$ index.php?$1/$2;

  13.                rewrite ^([0-9]+)$ index.php?$1;

  14.                rewrite ^action_(.+)$ index.php?action_$1;

  15.                rewrite ^category_(.+)$ index.php?action_category_catid_$1;

  16.                rewrite ^itemlist_(.+)$ index.php?action_itemlist_catid_$1;

  17.                rewrite ^viewnews_(.+)$ index.php?action_viewnews_itemid_$1;

  18.                rewrite ^viewthread_(.+)$ index.php?action_viewthread_tid_$1;

  19.                rewrite ^index([\.a-zA-Z0-9]*)$ index.php;

  20.                rewrite ^html/([0-9]+)/viewnews_itemid_([0-9]+)\.html$ index.php?action_viewnews_itemid_$2;





  21.                rewrite ^/([0-9]+)/spacelist(.+)$ /index.php?uid/$1/action/spacelist/type$2;

  22.                rewrite ^/([0-9]+)/viewspace(.+)$ /index.php?uid/$1/action/viewspace/itemid$2;

  23.                rewrite ^/([0-9]+)/viewbbs(.+)$ /index.php?uid/$1/action/viewbbs/tid$2;

  24.                rewrite ^/([0-9]+)/(.*)$ /index.php?uid/$1/$2;

  25.                rewrite ^/([0-9]+)$ /index.php?uid/$1;



  26.                rewrite ^/action(.+)$ /index.php?action$1;

  27.                rewrite ^/category(.+)$ /index.php?action/category/catid$1;

  28.                rewrite ^/viewnews(.+)$ /index.php?action/viewnews/itemid$1;

  29.                rewrite ^/viewthread(.+)$ /index.php?action/viewthread/tid$1;

  30.                rewrite ^/mygroup(.+)$ /index.php?action/mygroup/gid$1;



  31.                location ~ .*\.php?$

  32.                {

  33.                        include conf/enable_php5.conf;

  34.                }

  35.        }
復(fù)制代碼
注:blog采用功能強(qiáng)大的Supesite作為Blog站點(diǎn): http://www.supesite.com/
1.Blog如何在Nginx里實(shí)現(xiàn)靜態(tài)化,具體設(shè)置見,上面的#supesite rewrite

4.down.redocn.com
[root@redocn vhosts]# vi down_redocn_com.conf



  1. limit_zone   one  $binary_remote_addr  10m;

  2. server

  3.        {

  4.                listen       80;

  5.                server_name  down.redocn.com;

  6.                index index.html index.htm index.php;

  7.                root   /data/www/wwwroot/down;

  8.                error_page 404 /index.php;

  9.                # redirect server error pages to the static page /50x.html

  10.                error_page   500 502 503 504  /50x.html;

  11.                location = /50x.html {

  12.                 root   html;

  13.                   }

  14.                #Zone limit

  15.                location / {

  16.                    limit_conn   one  1;

  17.                    limit_rate  20k;

  18.                }



  19.                

  20.                # serve static files

  21.                location ~ ^/(images|javascript|js|css|flash|media|static)/  {

  22.                root    /data/www/wwwroot/down;

  23.                expires 30d;

  24.                 }

  25.        }
復(fù)制代碼
注:
由于現(xiàn)在的BT下載軟件越來越多了,我們?nèi)绾蜗拗葡螺d的并發(fā)數(shù)和速率呢?apache需要三方模塊,nginx就不用了:)
在nginx利用兩個(gè)指令即可實(shí)現(xiàn):limit_zone(limit_conn) 來限制并發(fā)數(shù),limit_rate來限制下載的速率,請看上面的配置實(shí)例.

5.啟動nginx服務(wù)



  1. /usr/local/php-fcgi/bin/spawn-fcgi -a 127.0.0.1 -p 8085 -C 250 -u www -f/usr/local/php-fcgi/bin/php-cgi

  2. /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
復(fù)制代碼
你可以把上面兩條命令制做成系統(tǒng)啟動服務(wù)腳本,相關(guān)的腳本在網(wǎng)上也很多,本文就不再貼出來了:),給出一個(gè)實(shí)例鏈接:
http://topfunky.net/svn/shovel/nginx/init.d/nginx

五.問題及經(jīng)驗(yàn)總結(jié):
1.安裝Discuz論壇后,無法上傳大于M以上的附件?
在主配置文件里加入:client_max_body_size       10m; 詳細(xì)指令說明請參見(六)提供的Wiki鏈接.

2.Discuz附件無法下載附件?
最近遇到一個(gè)奇怪的問題在nginx下discuz論壇無法下載附件,后來打開error_log才知道,仍后一看/usr/local分區(qū)滿了,
清了一大堆無用文件后,馬上就正常了.

以上是本人遷移和測試過程中遇到的兩個(gè)小問題,在此附上說明,只是希望配置nginx的朋友不要犯我一樣的問題.
歡迎聯(lián)系NetSeek(狂熱linux愛好者^_^ msn:cnseek@msn.com QQ:67888954 Gtalk:cnseek@gmail.com,免費(fèi)提供linux技術(shù)咨詢和服務(wù)!~).

六.相關(guān)鏈接:
  1.Discuz!.net高性能的PHP論壇程序 http://www.discuz.net Supesite:  http://www.supesite.com/
  2.Nginx參考文檔:http://wiki.codemongers.com/
  3.利用Nginx實(shí)現(xiàn)負(fù)載均衡(阿葉大哥的文章):http://www.imysql.com/comment/reply/210
  4.linuxPk[Linux寶庫]:http://bbs.linuxpk.com
  5.紅動中國 http://bbs.redocn.com

該文章在 2012/4/3 23:29:17 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved