這些文章屬於 '網管相關' 類別

SELinux for Apache CGI

星期三, 15 3 月, 2006
最近安裝某產品在 Redhat Enterprise Server 4 (ES4) 上,有一部份需要以 cgi 的方式運作,
而且,Apache 設定都有設 ScriptAlias 等,同樣的環境在 Redhat9 都沒有問題,可是在
ES4,該 cgi 就是不正常 Work (internal error 之類的),查 Log 有下述的訊息。

  • audit(1141721196.117:0): avc: denied { execute } for pid=5818 comm=httpd name=xxx dev=hda2 ino=295228 scontext=root:system_r:httpd_t tcontext=system_u:object_r:usr_t tclass=file

網路查到這是 SELinux 這個套件所造成的,在 ES3 以及 Fedora 3 以後的版本,預設都會開啟此套件, 許多網頁會建議,/etc/selinux/config 這個檔,SELINUX=enforcing 改成 SELINUX=disabled ,嗯,這不是好主意,因為這是完全關閉該機制。就像買了個人防護軟體,然後,將所有的安全預設值,全部關掉一樣。

主要用 chcon 這個指令將要提供服務的目錄加以設定,-R 表示 recursive dir, -t 表示要指定的類型

  • chcon -R -t httpd_user_content_t <要被 cgi process 讀取的檔案目錄>
  • chcon -R -t httpd_sys_script_exec_t <提供 CGI 服務的目錄>

其餘 chcon 設 httpd 的其他類型,參考這裡 。

如果設定後,覺得總是有問題,可以用下列指令回歸到原始的設定,再重新設定

  • /sbin/restorecon -v -R /home

參考來源:

MySQL: Out of range value adjusted for column

星期五, 24 2 月, 2006
最近在 Windows XP 上安裝 CooCooWakka ,
PHP5 + MySQL5.0.13 + CooCooWakka0.0.9rc3 + Apache2.0.55
安裝過程,發現有下面的的訊息,
Query failed: insert into wakka_pages set tag = ‘MyNoteBook?’, time = now(), owner = , category = , user = ‘127.0.0.1’, latest = ‘Y’, body = ‘test’, tinychange= ‘N’, note= ,isnew= ‘Y’,aliasname= ,tview_count= ,refer_count= ; (Field ‘body_r’ doesn’t have a default value)
所以,去 MySQL 設定欄位 body_r 預設可以為 NULL,但接下來就發生下列的訊息,
Query failed: insert into wakka_pages set tag = ‘MyNoteBook?’, time = now(), owner = , category = , user = ‘127.0.0.1’, latest = ‘Y’, body = ‘test’, tinychange= ‘N’, note= ,isnew= ‘Y’,aliasname= ,tview_count= ,refer_count= ; (Out of range value adjusted for column ‘tview_count’ at row 1
後來查到說 mysql5 不喜歡空值 ”,而另外網頁則說明在「配置數據庫的時候設定為限制傳統 sql 格式了」,所以,在設定 MySQL Instance 時,將預設的 Strict Mode 的選項去除,再重新安裝 CooCooWakka 即可。

image

Backup MySQL utf8 data

星期三, 18 1 月, 2006
一直在 backup wiki 的 mysql 資料,也一直認為 mysqldump 出來的資料是 utf8,今天心血來潮試一下,並不是這麼回事,也還好有測試這段,不然哪天資料毀了,就欲哭無淚~~
 
根據 mysql 官方網站的這頁 ,指出預設是用 latin1 的語系,而混雜著 -with-extra-charsets=complex 設定,即預設仍可以儲存 utf8, multibytes 等其他語系的資料,但語系設定不是 utf8,而是 latin1 :S
 
我測試之後,在用 mysqldump 時,就要用下述的方法 dump 出,
 
mysqldump --default-character-set=latin1 &lt;database_name&gt;
 
而下面兩種都可能會讓原本 utf8 資料亂掉:
mysqldump --default-character-set=utf8 &lt;database_name&gt;
mysqldump &lt;database_name&gt;
若要用 webmin 的 mysql 模組來備份的話,要修改 /usr/libexec/webmin/mysql 下的 backup_db.cgi 和 backup.pl 兩檔,找出
&amp;backquote_logged(&quot;$config{'mysqldump'}
在這之後加上一段
$config{'mysqldump'} --default-character-set=$config{'encoding'}

並到 Webmin 前端 Mysql 的「組態設定」將 Encoding for database content 設成 latin1 即可.

站內搜尋



本站其他服務

本站其他軟體



  • 當令蔬果花卉(AgriInfo)

    是不是常常在超市看到水果蔬菜的價格,總是不確定是當季蔬果?這個服務就是幫你很快判斷眼前的蔬果花卉的價格是否便宜。


  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車


  • 下一班火車 (nextRail)

    這個 app 只要開啟後,就根據定位幫你過濾出最近火車站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班火車


  • 臉書粉絲專頁搜尋 (FPSearch)

    不用登入臉書即可搜尋臉書粉絲專頁(臉書粉絲團)所公開的文章。您可以指定特定日期範圍之前的文章,也可設定搜尋粉絲專頁內包含特定關鍵詞的文章。