通達OA2008優化前端web爲lnmp環境及後續優化

1.安裝lnmp環境 具體參考:CentOS6.5編譯安裝Nginx1.8.1+MySQL5.5.48+PHP5.2.17+xcache3.2+ZendOptimizer-3.3.9 http://blog.csdn.net/reblue520/article/details/51098590 2.上傳MYOA到/web/htdocs目錄下 3.修改對應的php.ini,nginx.conf和oa_config.php php.ini文件修改: 1.allow_call_time_pass_reference = on 2.register_globals = on 3.register_argc_argv = off 4.include_path = ".:/web/htdocs/MYOA/webroot" oa_config.php: if($ROOT_PATH=="") //$ROOT_PATH="d:/myoa/webroot/"; $ROOT_PATH="/web/htdocs/MYOA/webroot/"; //-- 網頁根目錄配置(IIS:手工配置) -- //$ROOT_PATH="d:/myoa/webroot/"; if(substr($ROOT_PATH,-1)!="/") $ROOT_PATH.="/"; //-- 附件路徑配置(Windows) -- //$ATTACH_PATH=$ROOT_PATH."attachment/"; //$ATTACH_PATH2=realpath($ROOT_PATH."../")."/attach/"; //-- 附件路徑配置(Unix/Linux) -- //$ATTACH_PATH="/myoa/attachment/"; //$ATTACH_PATH2="/myoa/attach/"; $ATTACH_PATH="/web/htdocs/MYOA/attachment/"; $ATTACH_PATH2="/web/htdocs/MYOA/attach/"; //-- MYOA數據庫配置 -- $MYSQL_SERVER="localhost:3336"; $MYSQL_USER="root"; $MYSQL_DB="TD_OA"; $MYSQL_PASS="pass"; 4.優化各組件(xcache,mysql,nginx)壓力測試 # chown -R nginx.nginx /web/ # chown -R mysql.mysql /data 5.配置數據庫讀寫分離 數據庫TD_OA上傳到/data/mydata目錄下 6.測試 流程的驗證: 能夠發起修改js後的流程(模擬其中一個同樣的流程,是否最終一致) 數據庫安裝後 須要查看 open_files_limit參數是否設置的足夠 mysql > show variables like '%open_files_limit%'; 也能夠在My.cnf中添加參數 open_files_limit=65535   不然報錯以下: 錯誤#23: Out of resources when opening file './TD_OA/USER.MYD' (Errcode: 24) SQL語句: SELECT * from USER where USER_ID='admin' or BYNAME='admin' 同時修改/etc/security/limits.conf,而後加入如下內容,退出再從新登錄便可(不須要重啓,退出當前的鏈接shell便可) # ulimit -n 查看參數是否生效 * hard nofile 65535 * soft nofile 65535 7.修改附件目錄權限 chmod -R 777 /web/htdocs/MYOA/attach 安裝本地鎖,防止有人在機房直接訪問機器進行惡意操做 # yum install -y vlock 8.修改系統回收session的時間和概率 vi /opt/lampp/etc/php.ini session.gc_maxlifetime = 900(默認爲36000秒10個小時) session_gc_probaility=5 (默認爲1,修改成5增長回收垃圾文件的機率) 9.與門戶單點登陸文件上傳、考試模塊文件上傳、attendance包含考勤系統文件上傳、插件turn文件夾上傳、general/010user_status用戶狀態文件 考試模塊MYOA/webroot/general/exam_manage Warning: Cannot modify header information - headers already sent by (output started at D:\MYOA\webroot\sso\config.php:1) in D:\MYOA\webroot\router.php on line 263 修改php.ini文件output_buffering選項由off改成on 安裝phpmyadmin,備用(修復mysql時有用) 十、二次開發文件上傳 1.JS文件上傳(webroot\inc\js\custom文件上傳) 2.自動計劃任務上傳(webroot\widget) 3.PHP插件上傳(F:\23620131125\webroot\general\workflow\plugin\turn) ***4.會議室附件頁面關閉(信息安全) D:\MYOA\webroot\general\meeting\apply\new.php 十一、若是有多臺web服務器負載均衡須要對附件進行同步 MYOA\attach 後續優化方向: 一、根據mysqltuner.pl優化mysql 二、升級mysql爲5.5 三、能夠考慮將默認的Myisam引擎更換爲innodb 1.強制合併功能有問題,強制合併只能用在發起全部的併發步驟而且全部分發的步驟都走到了強制和並處 解決辦法: 將/opt/lampp/htdocs/MYOA/webroot/general/workflow/list/turn目錄下的table_str.php、turn_next.php、turn_next_free.php三個文件更新爲以前版本便可 2.管理員製做流程插入表格的項是亂碼(暫時沒法解決,能夠直接經過html代碼編輯) 3.在線人數頭像不能點亮(若是點組織只顯示管理員在線,暫時沒法解決,不影響正常使用能夠忽略) 4.部門沒法自動更新 組織機構管理: 分析:a.部門管理負責將新建的部門寫入deparment表中b.用戶管理負責顯示部門和人員,信息來自deparment.php(經過分析php源碼能夠得知全部的部門信息列表都來自deparment.php文件) 解決辦法: 方法1 1.在windows環境的web端添加、修改部門信息確認信息正確 2.將windows下生成的department.php覆蓋linux環境中的文件 方法2 1.在部門管理裏面添加須要添加的部門(若是不行修改數據庫,先測試) 2.修改/opt/lampp/htdocs/MYOA/webroot/inc/department.php,添加相似內容 ①備份 cd /opt/lampp/htdocs/MYOA/webroot/inc/ cp department.php department.php.bak "1139" => array("DEPT_NAME" => "重點項目辦", "DEPT_PARENT" => 644, "DEPT_NO" => "04", "DEPT_LEVEL" => 3, "DEPT_LONG_NAME" => "HW-LOB/運營商軟件 DUG/重點項目辦",  "DEPT_LINE" => "││├"), "1142" => array("DEPT_NAME" => "重點項目辦交付部", "DEPT_PARENT" => 1139, "DEPT_NO" => "13", "DEPT_LEVEL" => 4, "DEPT_LONG_NAME" => "HW-LOB/運營商軟件 DUG/重點項目辦/ 重點項目辦交付部", "DEPT_LINE" => "│││└"), 5.OA系統發佈的廢棄通知刪除之後還在門戶裏面顯示 解決辦法: ①刪除OA裏面的通知 ②刪除ics_notify裏面的數據(至關於刪除推送給門戶視圖的數據ics_notify_view) ③刪除31.14數據庫中的數據 網絡結構 操做系統 程序自己 針對網絡的安全: 1.將服務器部署在內網,而且只開放web80端口訪問 2.提交運行的狀況下部署防火牆設備 針對操做系統的安全: 1.最小系統安裝法(只安裝必須的軟件,不安裝桌面保證安全的同事也能提高系統性能) 2.最少軟件、服務法(最少的服務等與最大的安全) 程序自己: 1.將軟件自己的補丁打全 2.採用web和數據庫分離的部署方式,數據庫不容許外網直接訪問 修改配置文件 1.編輯/opt/lampp/etc/httpd.conf 修改 Options Indexes FollowSymLinks ExecCGI Includes 爲Options FollowSymLinks Includes 2.隱藏apache版本相關信息 (錯誤頁面) 添加到httpd.conf文件結尾便可: ServerSignature Off ServerTokens Prod 3.關閉PHP敏感函數vi /opt/lampp/etc/php.ini disable_functions = exec,shell_exec,system,passthru,proc_open,show_source,phpinfo 4.在htdocs下,新建一個 robots.txt 文件來屏蔽全部的搜索引擎 cd /web/htdocs touch robots.txt
相關文章
相關標籤/搜索