顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


文章 - joeyhsy

頁: [1] 2 3 ... 10
1
謝謝各位學長熱心幫忙,這次對觀念釐清有長足的增長~~(雖然還是有一些盲點我搞不太清楚XD)

目前確定在ip分享器設定有瓶頸,也無法另外增加成本再搞一台內部NAT,

所以還是暫時先寫一個批次檔讓每台電腦執行route add來對應那台ubuntu了。

非常感謝~~ :)

2
pppoe 界面 , 就算取得兩個鄰近固定 IP , 溝通理當仍經過 ISP
你目前應該是用第一種 , 這情況 ftp 相當於不相干網段 ...... (哪有人不改分享器而企圖想改 yahoo 的)

哈哈,我真的是肖想...XD

第二種架構很可能只差兩步須注意的 ...
1. 能把 moden 這麼用的型號 , 有九成機率用掉了 192.168.1.1 ip
2. 你的 ip 分享器能做到像 ubuntu 一個 port 同時有 eth0 跟 ppp0 嗎 ?
最後設定上恐怕還需一條 iptables -t nat -A POSTROUTING -d 1.x --snat eth0ip

dark大,我改了第三種排列方,ubuntu加塊網卡,並把他們都確定連接在相同物理網段,
請您指導一下,改成這樣是否有解? (在不設定ip分享器與client端的做法)

edit: modem到switch這條可以拉掉,忘了改圖

3
對內的腳位

仔細一看 , ftp  應該一張網卡

在 ip 分享器 static route 裡多加一條
到 "固定 IP" 走 192.168.1.1


若還不行 , 建議你把架構圖貼上來 , 別人才能給你解法

dark大您這樣的做法當然是可以的喔...

但是小弟前面想提問的是:【是否可不動用ip分享器與client端pc的設定】,
可能是我沒能聽懂您的建議,簡單畫了一張圖給您參考,感恩:)

4
PHP程式設計討論區 / run php-cli安全問題
« 於: 2013-04-26 20:05 »
相信大家都知道可以用php-cli跑一些系統應用,例如可以利用php新增帳號之類的,
大概就是在sudoer裡面設定好你要跑的權限,但是萬一有太多系統指令想跑,一個
一個慢慢設定實在有點繁瑣,於是我很邪惡的直接指定一個php腳本在sudoer裡面,
這樣就不用一個個去設定系統指令權限了,問題是....不敢讓它上線@@....

各位學長,這樣一定是風險性很高的,若是硬是偷雞這樣跑的話,有甚麼補遺措施嗎?
(ps:請鞭小力點)

5
兩個對外 IP 各是多少 ?
都固定嗎 ?
...

只有ubuntu是固定ip,dark大的意思是將ip分享器跟ubuntu鎖在同一網段的意思嗎?
另外....【內腳】是甚麼意思? 

6
這個問題可以從 DHCP + DNS  來解決,

第一步,先停用 IP分享器的  DHCP
第二步,啟用  Ubuntu 上面的  dhcp server , 再把 dhcp 上的 dns 指到 ubuntu 上,default gateway 指到  192.168.1.254
第三步,再 ubuntu  上的 dns 設定 view 的方式,內部的網路,域名指到自己,外部網路指到真正的 ip

我想這應該是改最少的東西的方式了

謝謝您~~
原本的作法就是這樣,但是客戶端都希望額外使用ip分享器來上網,不想把ubuntu當router上網,
當ubuntu發生事故的時候,他們上網不會受到影響,而且ip分享器壞掉,他們可以自行立即更換ip分享器。
看來真的只能在ip分享器或是每個client端pc著手了,再次感謝您的熱心回覆:)

7
所以您所說的網路環境有一點奇怪,可否再提供詳細一點,可以給您比較好的建議

不好意思,讓您混淆了~~

ubuntu與ip分享器在同一個網段,其它未知數量pc數台,也在同網段
ubuntu eth0單網卡ip:192.168.1.1
ip分享器:192.168.1.254 (gateway)
其它pc皆透過ip分享器上網

狀況:必須使用ftp://192.168.1.1才能快速下載檔案,使用ubutun的完整域名,例如:ftp://xxx.com,則會從ip分享器繞過去下載,導致以上我說的問題,
解法可在每台pc設定route add,或是ip分享器內forward,想知道是否有除了這兩種方式之外的解法(在ubuntu server下手)。

8
我的建議是,您把 ubuntu 主機放在內網中,再用 ip 分享器做 port forward 的方式連您的 ubuntu ,

再把 ip 分享器的dns指到 ubuntu 會比較方便

感恩,因為客戶群有點多,每一家用的ip router不一樣,原本想說有沒有方式不動分享器的方法,謝謝~~

9
在ubuntu上架一個DNS SERVER
區隔出內部網路的解析
然後其他PC的DNS設定都指定到ubuntu 就好了

謝謝您的幫忙,不知方不方便給個google關鍵字方向?
【其他PC的DNS設定都指定到ubuntu】這意思是??

ps.其他pc不是只有ip?是指在ip分享器上做route嗎? 如果該分享器無此功能的話.....?


10
各位學長好:

我的網路環境如下:
ubuntu配置單網卡透過adsl上網(ppp0),eth0配置ip: 192.168.1.1
現有內網pc一台,透過ip分享器上網,ip分享器gateway:192.168.1.254

我需要下載位於ubuntu內ftp檔案時,發生的狀況:
當內網pc使用ubuntu的完整網域名稱,檔案下載很慢,因為是從ip分享器出去的,所以暫時解決的方式:透過在這台內網pc端指定route得到解決。
但是,這麼作的方式,當有多部內網pc皆透過ip分享器上網,豈不要每一台都去設定route,是否有可能在ubuntu這端解決??

謝謝您的回覆:)

11
太久的文章,連結失效了,這裡講得很清楚也很容易實作,您參考看看~

http://xiaoruanjian.iteye.com/blog/1384424

13
tommy大抱歉,最近工作突然忙了起來,忘了來回覆~~

addslashes是亂入,這個問題有一些複雜的其他因素,我自己再多多嘗試一下,希望能夠找出最好的方式,萬分謝謝您!

14
看你是要用 ' 還是要用 " 吧. 然後把檔名中的該字元換成 \' 或 \" 吧.

代碼: [選擇]
$file = scandir取得含有兩個跳脫字元目錄名..
shell_exec("mv ".addslashes($file)." /tmp/");
改了一下,似乎行不通,請教tommy大,上面這樣的問題是出在哪裡?
(不是應該跳脫在檔名外部嗎? 為何是跳脫檔名,這樣是否會file not found...??)

15
PHP程式設計討論區 / shell_exec的特殊符號
« 於: 2012-10-23 17:13 »
假設目錄名稱為: test'123
然後把取得的目錄名稱指定給$file,
執行: shell_exec("mv \"{$file}\" \"目標目錄\"");
以上ok..

假設目錄名稱改為: test"123
因為"的原因,則無法順利執行,
於是我必須改成:
shell_exec("mv '{$file}' '目標目錄'");

但如果目錄名稱同時有兩個符號,例如: test'123"456
請問有解嗎?

ps.不使用shell_exec可以解決這個問題,但想知道這狀況是否有解

16
終於解決了, 在網路上找到修正shortcut的behavior登錄檔...

這登錄檔
windows 7可用嗎?

很抱歉,沒試過耶~

17
補充一下,關於第二個問題,我在php官網找到很詳盡的解釋,
需要的朋友,可以移駕來看看:

http://php.net/manual/en/language.types.array.php

18
非常感謝黑大提供的資訊,這樣我就知道該怎麼解決這些問題了,
以前都專注在寫程式碼,對系統設定都不太在意,可以跑就好了,
看來以後應該多吸收相關的知識,感恩~ :D

19
今天升級到php 5.3.1-0.0.RC1,發現一堆問題,看來以前偷懶的下場滿慘的~~

Q1:deprecated functions各位會真的大改程式碼嗎?
例如準備被移除的split()、ereg().....
有人說在php.ini加入
php_flag allow_call_time_pass_reference On
php_value error_reporting “E_ALL & ~E_NOTICE & ~E_DEPRECATED”
可以暫時避開這個問題...
但是php_flag allow_call_time_pass_reference是什麼意思?
google過的解釋是:是否啟用在函數調用時強制參數被按照引用傳遞。
不太懂,可以舉個例子嗎?

Q2:偷懶寫法造成的問題一
這個可能跟php 5.3沒有關係,但是升級後我才發現這個問題...
以前我都是這樣寫: $var[key] ,跟 $var["key"] 的差別是什麼?
我一直以為沒差,今天噴出一堆警告訊息 :'(

Q3:另一個偷懶的問題二
以前都偷懶這樣: if($var)
是否以後一定都要改成: if(isset($var))

20
Linux 討論版 / [已解決]xinetd之imap疑問
« 於: 2009-09-20 15:00 »
最近開發了一個基於imap的webmail,似乎imap對於同一ip來源(或許應該說是同一session階段),
每次只能做單程序存取(無法multiple connect),google了一些資料,看來有點像是IMAP_USELOCKS
摘錄如下:
引用
##NAME: IMAP_USELOCKS:0
#
# Setting IMAP_USELOCKS to 1 will use dot-locking to support concurrent
# multiple access to the same folder.  This incurs slight additional
# overhead.  Concurrent multiple access will still work without this setting,
# however occasionally a minor race condition may result in an IMAP client
# downloading the same message twice, or a keyword update will fail.
#
# IMAP_USELOCKS=1 is strongly recommended when shared folders are used.

問題是我使用xinetd的imap,並沒有這樣的設定檔來啟動這樣的功能...
是否只能額外再另外裝imap server?

附註:後來找到可以在xinetd.conf裡加上per_source的參數,但是似乎無效.


[已解決] 對不起,忘了考慮是同一個網域,測試過後已ok。

21
google翻到的資料

裡面有提到:
Since the connection is stored in a variable called $mbox you can call this every time you need to connect, ideally you would store this information in a session.

可是實作卻是不行?

非常感謝您!我再繼續找找資料~

22
嗯~~ 剛剛看到 serialize() 的說明..

The value to be serialized. serialize()  handles all types, except the resource-type.


先試試吧~ 行不行我也不清楚  ;D ;D
yamaka大,您的速度真快!

看來resource-type真的不行,這個我試了好久,不知道您對imap熟不熟?
有一些東西一直搞不懂...

23
= ="

我笑了~


將 serialize 後的資料給 session
然後再 unserialize 回來使用
代碼: [選擇]
<?
$mbox= serialize(@imap_open($box, $username,$password));
echo unserialize($mbox);
?>

希望沒有再次誤解,但是還是得到 0

24
試試用 serialize()

代碼: [選擇]
<?
echo $_SESSION[mbox] = @imap_open($box, $username,$password);
echo serialize($_SESSION[mbox]);
echo unserialize($_SESSION[mbox]);
?>

結果:
Resource id #5
i:0;

依然得不到連線的Resource,這樣使用對嗎?
感謝您 :)

25

代碼: [選擇]
a.php
<?
session_start();
session_register("mbox");
$_SESSION[mbox] = @imap_open($box, $username,$password);
?>


代碼: [選擇]
b.php
<?
session_start();
imap_reopen($_SESSION[mbox] ,$newbox);
?>

Warning: imap_reopen(): supplied argument is not a valid imap resource
我應該如何得到舊有的連線呢?

26
瀏覽器版本??

已測試過FF3和IE6都一樣。

再補充:php版本是5.1.6,不知道會不會是版本的bug。

27
動彈不得時,有觀察serv的cpu loading嗎?

cpu loading很小,只有0.0幾,只要把session_start()那一行拿掉就ok。
兩種方式的cpu loading差不多。

補充:是那個client會卡住,不影響其他client

28
這樣很正常:
代碼: [選擇]
header("Cache-control: private");
header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize($filename));
header("Content-Disposition: attachment; filename=\"$filename\"");

開頭加上session_start(),當下載進行中,會導致網站其他連結動彈不得?
代碼: [選擇]
session_start();
header("Cache-control: private");
header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize($filename));
header("Content-Disposition: attachment; filename=\"$filename\"");

29
另外, 建議樓主不要著墨在描述你的準備動作上

哈哈~我也有這個感覺咧,動手開始做自然就知道了 :D

30
這個功能還是得小心使用哪,小心撐爆瀏覽器~
短時間還好,如果要跑長途,還是乖乖的用ajax。

http://phorum.study-area.org/index.php/topic,50323.0.html
http://phorum.study-area.org/index.php/topic,52757.msg270898.html#msg270898

頁: [1] 2 3 ... 10