検索結果

CentOS6

全1093件中621~640件表示
  • 全てのカテゴリ
  • 全ての質問
  • VPSのCentOS5でサーバ構築を勉強中です。

    VPSのCentOS5でサーバ構築を勉強中です。 postfix、devecotの設定でつまずいてしまい、数日膠着状態です。 mailコマンドで携帯やISPのメールアドレスには送ることが出来るのですが、 受信ができません。どこが怪しいのかアドバイスよろしくお願いします。 VPSは固定IP、ポート開放は確認出来ています。 ドメインのDNSは Aレコード xxxxxx.com 12.34.56.78 MXレコード xxxxxx.com に設定しました。ドメイン名でapacheのHPが見えるのを確認済。 postfixとdevecotのmailboxはmaildirで統一。 postfixのmain.conf(コメントアウトは削ってあります) queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix mail_owner = postfix myhostname = xxxxxx.com mydomain = xxxxxx.com myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain unknown_local_recipient_reject_code = 550 mynetworks = 192.168.0.0/23, 127.0.0.0/8 relay_domains = $mydestination etc/postfix/relay_recipients alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases home_mailbox = Maildir/ debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = no manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.3.3/samples readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES メールのログは文字数制限の為、補足に後ほど追記します。 アドバイスよろしくお願いいたします。

  • Centos5(utf8)のperl でメール送信の関数プログラムを作

    Centos5(utf8)のperl でメール送信の関数プログラムを作成しています。 bccにもメールを送信したいのですが、呼び出される度にbccのメールアドレスの数が異なります。以下はテスト的に作った動くサンプルです。 #!/usr/bin/perl use Net::SMTP; use Encode; use strict; 1 my $ServerName = 'mail.server.jp'; 2 my $from = 'from@mailaddress'; 3 my $to = 'to@mail.address'; 4 my $bcc = 'bcc0@mail.address'; 5 my $anotherbcc = 'bcc1@mail.address'; 6 my $onemorebcc = 'bcc2@mail.address'; 7 my $smtp = Net::SMTP->new($ServerName, Debug => 0); 8 $smtp->mail($from); 9 $smtp->to($to); 10 $smtp->bcc($bcc, $anotherbcc, $onemorebcc); 11 # to ( ADDRESS [, ADDRESS [...]] ) 12 # cc ( ADDRESS [, ADDRESS [...]] ) 13 # bcc ( ADDRESS [, ADDRESS [...]] ) 14 $smtp->data(); 15 $smtp->datasend("From: $from\n"); 16 $smtp->datasend("To: $to\n"); 17 my $SUBJECT = "日本語タイトル"; 18 my $body = "日本語本文\n"; 19 Encode::from_to($SUBJECT, "utf8", "iso-2022-jp"); 20 Encode::from_to($body, "utf8", "iso-2022-jp"); 21 $smtp->datasend("Subject: ".$SUBJECT."\n"); 22 $smtp->datasend("MIME-Version: 1.0\n"); 23 $smtp->datasend("Content-Type: text/html; charset=iso-2022-jp\n"); 24 $smtp->datasend("\n"); 25 $smtp->datasend($body); 26 $smtp->dataend(); 27 $smtp->quit; 10行目の通り、メールアドレスを羅列して渡すとメールは配信されます。 メールアドレスを配列渡し( @bccarray=('bcc0@mail.address', ・・・); で@bccarrayを渡す)と配信されません。 これを関数化し、bccアドレスの数を可変にしたいのですが良い方法はないでしょうか? よろしくお願いします。

    • ベストアンサー
    • Perl
  • PHPのSystem関数でcdしてもうまくできない

    PHPのSystem関数でcdしてもうまくできない PHPで特定フォルダを圧縮しようと以下のように書いてみました。 system("cd /var/www/html/hoge;zip -r hogehoge hoge.zip"); しかし上記だと何も実行されずapacheのエラーログを見ると cdでエラーとなり Not a directryとなります。 もちろん上記フォルダは存在しますし 上記コマンドをSSH上から実行すると正しく実行されます。 権限の問題かな?とも思ったのですが試しに以下のようにフルパスで書くときちんと実行できます。 (ただし圧縮ファイルに無駄な階層が入ってしまうので解決にはなっていないのですが) system("zip -r /var/www/html/hoge/hogehoge /var/www/html/hoge/hoge.zip"); 試しに以下のようにcdコマンドを売ってpwdできちんとcdできてるか試してみると system("cd /var/www/html/hoge;pwd"); →ダメ system("cd /var/www/html/;pwd"); →ダメ system("cd /var/www/;pwd"); →ダメ system("cd /var/;pwd"); →ダメ system("cd /;pwd"); →OK system("cd /tmp/"); →OK となります。 やっぱり権限関連のような気はするのですがなんでだろう? なお/var/www/html/以下はすべて所有権をapacheにしていますし hoge以下は777にしているので書き込み権限もあります。 なんでcdできないか解決方法の心当たりあったら教えてくください。 よろしくお願いします。 環境は以下の通りです。 CentOS 4.7 PHP 5.1.6

    • ベストアンサー
    • PHP
  • ftp FileZilla エラー 接続できない

    centosでwebサーバーを構築したいと思っています。 現在filezillaをインストールしたところなのですが、最初の設定が終わり接続をしようとしたところ下記のエラーが出て接続できません。どのような原因が考えられるでしょうか? 状態: 選択されたポートは通常違うプロトコルによって利用されています. 状態: ホスト名.dip.jp のアドレスを解決しています 状態: xxx.xxx.xx.xxx:xx に接続しています... 状態: "ECONNREFUSED - Connection refused by server" への接続に失敗しました, エラー: サーバに接続することができませんでした 状態: 再試行をまっています... 状態: ホスト名.dip.jp のアドレスを解決しています 状態: xxx.xxx.xx.xxx:xx に接続しています... 状態: "ECONNREFUSED - Connection refused by server" への接続に失敗しました, エラー: サーバに接続することができませんでした ・インストール後サイトマネージャの設定を終えたところです。 ・”ホスト:ホスト名.dip.jp ポート:22 サーバの種類:FTP-File Transfer Protocol ログオンの種類:通常”と設定しました。 ・FileZillaのヴァージョンは3.2.6.1です。 ・サーバーPCの21番のポートは開放してあります。( http://www.cman.jp/network/support/port.html このサイトで、グローバルIPアドレス指定で21番ポートの開放を確認しました。ホスト名.dip.jpでは開放が確認できませんでしたが…。) よろしくお願いします。

  • pearが機能しない

    いつもお世話になっております。 今回は自宅サーバーにてPHPを使用したいと思い、yumでインストールしました。phpinfo()や簡単phpは問題なく動作するのですが、pearを使用しようと思ったので、まったく動作しません。 サンプルソースでは一番上に「クラスのテスト」としか表示されません。 php.iniの設定箇所[include_path]を /usr/share/pearとしました。 yumでインストールやアップデートをするとpear関連はここにはいっていると思われるのでそうしましたが、ダメでした。 下記がサーバーの状態です。 os:CentOS 4 php:5.1.6 apache:2.0 phpinfo()でのinclude_pathの値:.:/usr/share/pear 以下サンプルソース <html> <head> <title>クラスのテスト</title> <meta http-equiv="Content-Type" content="text/html;charset=Shift_JIS"> </head> <body bgcolor="#FFFFFF" text="#000000"> <font size="4">クラスのテスト</font> <br><br> <?php require_once "XML/RSS.php"; $xmlrss = new XML_RSS("http://pcweb.mycom.co.jp/haishin/rss/index.rdf"); $xmlrss->parse(); $info = $xmlrss->getChannelInfo(); $info['description'] = mb_convert_encoding($info['description'],'EUC','UTF-8'); ?> <h1><a href="<?=$info['link']?>"><?=$info['title']?></a>記事ヘッドライン</h1> <font size="2"><?=$info['description']?></font><br> <hr><font size="2"><ul> <?php foreach($xmlrss->getItems() as $item){ $title = mb_convert_encoding($item['title'],'EUC','UTF-8'); ?> <li><a href="<?=$item['link']?>"><?=$title?></a></li> <?php } ?> </ul></font> </body> </html> 以上になります。 どうすればpearが機能するようになりますでしょうか? ご助言いただけたらと思います。 宜しくお願いいたします。

    • 締切済み
    • PHP
  • sambaにWinからアクセスできません。

    現在、sambaで共有サーバーを構築しています。 過去、何度か構築しており、今回は新たなサーバーに交換するために構築しています。 しかし、奇妙な現象で足止めくらっております(ーー; /tmpにはアクセスできるのですが、共有ディレクトリとして作成したディレクトリにはアクセスができません。 smb.confは下記の通りです。 [share] path = /home/samba/share read only = No force create mode = 0666 force directory mode = 0777 guest only = Yes guest ok = Yes [share2] path = /samba read only = No force create mode = 0666 force directory mode = 0777 guest only = Yes guest ok = Yes [tmp] path = /tmp read only = No force create mode = 0666 force directory mode = 0777 guest only = Yes guest ok = Yes ディレクトリの権限は drwxrwxrwt. 19 root root 4096 7月 2 19:40 2012 tmp drwxrwxrwt. 2 root root 4096 6月 29 17:41 2012 samba [share]は drwxrwxrwx. 2 root root 4096 6月 29 15:35 2012 share /tmpは問題なくアクセスできることから、 /samba のパーミッションにもスティッキービットを設定してみましたが、結果はダメでした。 iptablesの方はきちんと設定しておりますので問題ありません。 /tmpにはフルアクセスできているので、問題はないと思います。 なお、/tmpにはフルアクセスできますが、 /home/samba/share にアクセスした場合は、その下にあるディレクトリは見ることができますが、ファイルはWinからは見えません。これも謎です。新規にファイルを作成しようとすると、 対象のフォルダへのアクセスは拒否されました この操作を実行するアクセス許可が必要です とダイアログが表示されます。 /samba にアクセスしようとしたら、ディレクトリ内は閲覧できず、 ネットワークエラー \\192.168.1.10\share2 にアクセスできません 名前のスペルを確認しても問題がない場合は、ネットワークに問題がある可能性があります。 と出ます。 まったく同じ設定で、なぜこう動作が違うのか・・・ 今までのsambaの設定でこのようなことは起こったことはありません。 完全に行き詰っております。アドバイスをお願いします。 環境 CentOS6.2 samba3.5.10-116.el6_2

    • Antares
    • 回答数2
  • dovecot環境でのメール受信ができない

    質問初心者ですが、よろしくお願い致します。 現在、postfixとdovecotを利用したメールサーバーを構築中ですが、 pop3でのメール受信ができない状況になっています。 ■環境 dovecot-2.0.9 x86_64 postfix-2.6.6 x86_64 CentOS 6.3 1)今後、サーバ上で3つのドメインを並行運用するため、バーチャルドメイン化しています。 2)そのため、メールサーバーの設定もバーチャルドメイン運用を視野に入れた設定にしています。 3)メールポート(25,110,143,587)は空いている状態です。 4)メール送信は外部に対して正常に実施できます。 5)受信メールは、設定したディレクトリ上にスプールされている事を確認しました。 6)メールクライアント上は、受信時の認証は正常に行われている模様です。 7)Linux側のメールログも正常なように見えます www dovecot: pop3-login: Login: user=<user@domain.com>, method=PLAIN, rip=xx.xx.xx.xx, lip=xx.xx.xx.xx, mpid=xxxx www dovecot: pop3(user@domain.com): Disconnected: Logged out top=0/0, retr=0/0, del=0/0, size=0 8)一方で、以下のようなログも吐いています。 www dovecot: auth: Error: passwd-file /etc/dovecot/passwd: User user/Maildir is missing userdb info 9)[missing userdb info]が気になり色々調べているのですが、  dovecotの認証関係ファイルは /etc/dovecot/passwd を参照するように設定しているため、  どこが問題なのか追い切れない状態になっています。 10)/etc/dovecot/dovecot.conf は特に設定していません。 11)/etc/dovecot/conf.d/10-auth.confでは[!include auth-passwdfile.conf.ext]のみ有効にしています。 12)include auth-passwdfile.conf.extではuserdb {driver=passwd-file args=/etc/dovecot/passwd}と設定しています。 認証が上手く動作していないのだと思うのですが、私の力量ではここまで整理するのが限界でした。 どなたか、ヒントを頂けると助かります。よろしくお願い致します。 また、足りない情報等あるようでしたらご指摘下さい。

  • AwstatsとDigest認証の設定について

    訂正箇所がありましたので再投稿致します。 ■問題 IE8(Windows7)でのみ、認証時に何度もパスワードを要求されてしまう。 ■サーバ環境 CentOS 5.5 Apache 2.2 (yumでインストール) Awstats 6.95 (dagリポジトリからyumでインストール) ドメイン例:aa.com 認証を試しているURL:http://aa.com/awstats/ # awstats用に追加したAliasとセクションコンテナ Alias /awstats/ /var/www/awstats/ <Directory /var/www/awstats/> DirectoryIndex awstats.pl Options ExecCGI order deny,allow deny from all allow from 192.16.1. </Directory> ■詳細内容 AWstatsのディレクトリにDigest認証をかけたく設定したのですが、IE8(Windows7)でのみ何度もパスワードを要求されてしまいます。 awstats.pl にアクセスした際に表示される画像に対して、画像ごとにパスワード要求が行われているようです。 IEのキャッシュを削除し、初回アクセスする時はパスワード要求は一度のみ行われ、ページも正常に表示されています。 IEを再起動した2度目以降にアクセスする際は、毎回画像ごとにパスワード要求が行われてしまいます。 (パスワードを全て入力していくとページは正常に表示され、2回目以降のパスワードをキャンセルし続けると画像のみが表示されない) IE7では試していないのでわかりませんが、IE6、Firefox、Safari、Chrome、Opera、Lunascapeなど他のブラウザではそのような現象は発生せず、パスワード要求は一度しか行われません。 また、IE8とIE6の場合はパスワード認証のダイアログが表示されている段階で、キャッシュに残っていると思われるページが表示されてしまいます。 IE以外のブラウザは正常に認証が行われているので設定ファイルでのディレクトリの指定間違いなどは無いと思うのですが、 IE向けに特別な設定オプションが必要なのでしょうか? IE6用に以下の設定はhttpd.confに追記しています。 BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On 提示するべき設定内容がありましたら提示いたしますので、よろしくお願いいたします。 ■訂正箇所 誤: awstats.pl と同じディレクトリに、単純にHTMLファイルに画像(Awstatsで使われるアイコン画像)をリンクさせたものを作って認証を試した場合は、 IEも含め試した全てのブラウザで画像ごとにパスワード要求が行われるようなことはありませんでした。 正: 単純にHTMLファイルに画像(Awstatsで使われるアイコン画像)をリンクさせたものを作って認証を試した場合も同様の結果でした。

    • 20030
    • 回答数1
  • apacheでパスワードなしログインが出来ない

    いつもお世話になります、 PHPからrsyncを実行するため、 apacheでパスワードなしログインが出来るようにしたいのですが 設定をしても、どうしてもパスワードを要求されてしまいます。 エラーメッセージが出ないので八方ふさがりになってしまいました LINUX上級者の方ご教授頂けると嬉しいです クライアント:CentOS5 サーバ:RedHutLinux5.6 【行いたいこと】 apacheでパスワードなしログインが出来るようにしたい 【クライアント側】 1.まずはapacheでsuできるようapacheユーザの最後の/sbin/nologinを/bin/bashに変更 2.apacheユーザの秘密鍵と公開鍵を置く場所を作る # mkdir /var/www/.ssh # chmod 700 /var/www/.ssh # chown apache.apache /var/www/.ssh 3.apacheユーザの秘密鍵と公開鍵を作る # su - apache $ ssh-keygen -t rsa 空でenter 4.以下の文字列をコピー $ cat ~apache/.ssh/id_rsa.pub 【サーバ側】 5./etc/passwdにapacheが見当たらなかったので追加 apache:x:48:48:Apache:/var/www:/bin/bash 6./etc/groupにapacheが見当たらなかったので追加 apache:x:48: 7.フォルダを作り公開鍵をペースト # mkdir /var/www/.ssh # chmod 700 /var/www/.ssh # chown apache.apache /var/www/.ssh # chown apache.apache /var/www/.ssh/authorized_keys # chmod 600 /var/www/.ssh/authorized_keys 8.権限付与 # chgrp -R apache /var/www/html 【クライアント側】 9.apacheにsuする 10.SSHで接続 ssh -i /var/www/.ssh/id_rsa XX.XX.XX.XX 11.パスワードを聞かれてしまう apache@XX.XX.XX.XX's password: 失敗

  • Cent OS NIC 片方にPing が通らない

    Cent OSサーバで、NIC 2個に異なるネットワークを設定し、ケーブルを両方接続すると、片方が不通になり、困っております。分かる方おりましたら、教えて頂けないでしょうか? 下記の構成、現象となります。 【構成】 ハードウェア: PowerEdge R610 OS: CentOS 6.0 NIC: Intel 82576 Gigabit 2個口 eth0: IP address: 202.xxx.xxx.xxx Netmask: 255.255.255.240 Gateway: 202.xxx.xxx.xxx eth1: IP address: 192.168.xxx.xxx Netmask: 255.255.255.0 Gateway: 192.168.xxx.1 【現象】 eth0/1ともに一方だけケーブルを挿すとPing/SSH ともに利用できる。 ただし、両方にケーブルを挿して有効にした場合、先に有効だったeth は Ping/SSH が外部から不通になり、後から有効にした方だけ Ping/SSH が通じるようになります。network restart を何度やっても同じ結果でした(何度もやってるとむしろ片方のeth がNetwork Manager から認識しなくなって reboot をかける羽目に)。 サーバ側で、TCPDUMP で eth0 を外部からのPing を監視しながら、eth1 も有効にすると、eth0は外部PCからの Ping が不通になるが、サーバ側のTCPDUMP ではPing を受信している様子。(eth1 にはもちろん外部からPing は通る状態) 要するに後から有効になったeth に外部からPing が通るという状態となります。 分かりにくくて申し訳ないですが、宜しくお願い致します!

  • rsyncのPermission denied

    CentOS6.3にて rsync -avvz root@172.30.1.21:/mnt/iptables/ /mnt/nas/iptables/ を実行しました。ログとして以下のものが出力されました。 <ログ> opening connection using: ssh -l root 172.30.1.21 rsync --server --sender -vvlogDtprze.iLs . /mnt/iptables/ root@172.30.1.21's password: receiving incremental file list delta-transmission enabled (1)rsync: chgrp "/mnt/nas/iptables/." failed: Permission denied (13) <質問1> (1)の意味がわからないのですが、rsyncは何をしようとしてなぜパーミッションエラーが出ているのでしょうか?  ・root@172.30.1.21:/mnt/iptables/ は、別サーバのNFSをマウントしています。  ・/mnt/nas/iptables/ は、NASドライブをcifstestユーザでマウントしています。  【コマンド:mount -t cifs //NASのIP/cifs/ /mnt/nas/iptables/ -o username=cifsuser,iocharset=utf8,codepage=932】  (NASにrootユーザが作れなかったため)  ・rsync実行時は、rootユーザー。 になります。 <質問2> ただ、パーミッションエラーが出てたのですが、以下ログが出力されており、 データのコピーが完了していました。 total: matches=0 hash_hits=0 false_alarms=0 data=3999447313 sent 546 bytes received 493957830 bytes 1123909.84 bytes/sec total size is 3999426304 speedup is 8.10 rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1505) [generator=3.0.6] ためしにコピーされた一つのコピー元ファイル と コピー後のデータをdiffしてみた所 エラーも出ませんでした。サイズも一緒。 これは正しくコピーできていると信じていいのでしょうか? ご教授おねがいします。

  • このping ルーティングが理解できません

    CentOS6 KVM ホスト上に3つのゲストが動いてます。 192.168.9.0/24 のブリッジ(br0) には各ゲストのeth0 が、 192.168.10.0/24 のブリッジ(br1)にはeth1 が属しています。 PC_0 のroute 192.168.9.0 * 255.255.255.0 eth0 default 192.168.10.9 eth1 PC_1 のroute 192.168.9.0 * 255.255.255.0 eth0 default 192.168.9.9 eth0 PC_1(192.168.9.200) からPC_0(192.168.10.100) にping を打ちます。ICMP Request は届くんですが、ICMP reply が戻りません。 PC_0にてeth0 を使うルーティング(以下)を除去します。 192.168.9.0 * 255.255.255.0 eth0 するとping は通ります。vyatta には特にルーティングは設定してません。 通る時のtraceroute は以下になります。 1 192.168.9.9 (192.168.9.9) 0.300 ms 0.118 ms 0.084 ms 2 192.168.10.100 (192.168.10.100) 0.261 ms 0.172 ms 0.163 ms PC_0 のeth0 が有効だと、PC_1 にICMP Replyが戻らない。これが理解できません。なぜでしょうか。 逆にPC_0 からPC_1 にはping 通ります。PC_0 のeth0 を無効にしても、しなくても。 行き詰まってます。よろしくおねがいします! 思うに・・・行きはVyatta を経由しており、帰りはそこを経由してないからダメ?それはなぜ?

    • noname#187269
    • 回答数1
  • tcp wrapper の設定について

    1つのサーバーで、数十のドメイン、それら合計で1千万件程度のページがあります。 検索エンジンのロボットアクセスが秒あたり複数回あり、MySQLで出来たブログページのためアクセスのたびに動的ファイルを作り続けておりCPUが休まりません。 そこで、 tcp wrapper で当方に必要ないロボットを弾きたいと考えています。 下記のような設定とし、特に頻繁に来るロボットを弾いたつもりなのですが、相変わらず該当IPからの訪問があります。CPUファンもフル回転状態です。 (ファイル /var/log/httpd/access_log に相変わらず記録されます) 下記の設定 → サーバーの再起動 では弾くことが出来ません。 記載方法に誤りがあるのかも知れません。 ご指導いただければ幸いです。よろしくお願いいたします。 サーバーはCentOS6.4です。 /etc/hosts.allow : ALL EXCEPT .ahrefs.com : ALL EXCEPT .easou.com : ALL EXCEPT .baidu.com : ALL EXCEPT 5.10.83.2 : ALL EXCEPT 5.10.83.3 : ALL EXCEPT 5.10.83.4 : ALL EXCEPT 5.10.83.5 : ALL EXCEPT 5.10.83.6 : ALL EXCEPT 5.10.83.7 : ALL EXCEPT 5.10.83.8 : ALL EXCEPT 5.10.83.9 : ALL EXCEPT 5.10.83.10 : ALL EXCEPT 5.10.83.11 : ALL EXCEPT 5.10.83.12 : ALL EXCEPT 5.10.83.13 : ALL EXCEPT 5.10.83.14 : ALL EXCEPT 5.10.83.15 : ALL EXCEPT 5.10.83.16 : ALL EXCEPT 5.10.83.17 : ALL EXCEPT 5.10.83.18 : ALL EXCEPT 5.10.83.19      : 延々数百のIPアドレス      :      :      :

    • tajix14
    • 回答数2
  • バイナリファイルをダウンロードできなくなりました。

    バイナリファイルをダウンロードできなくなりました。 以下のように、fopen で取得したバイナリデータをブラウザにダウンロードさせていましたが、ある時からダウンロードできなくなりました。 ・プログラムコードは変更していません。 ・同様の処理をしている全ての箇所が失敗するようになりました。 ・いずれも、かつては正常に動作していました。 ・ApacheやPHPはエラーメッセージを出力していません。 Apacheの設定またはPHPの設定を変えてしまったのかな、と推測していますが、原因がつかめていません。 検討がつかないので困っています。推測できる原因をご提示ください。 [環境] CentOS 5.3 (ルート権限も持っている、完全にコントロールできる環境です) PHP 5.1.6 Apache 2.2.3 [問題のコード その1] $ret=''; $handle = @fopen($file_name, 'r'); if ($handle) { while (!feof($handle)) $ret.=fread($handle, 8192); fclose($handle); } header('Content-disposition: attachment; filename="'.$src.'"'); header('Content-type: audio/3gpp'); header('Cache-Control: private'); header('x-jphone-copyright: no-transfer'); die($ret); [問題のコード その2] $url = "http://chart.apis.google.com/chart?".http_build_query($query); $img = @imagecreatefrompng($urls); $img = @imagerotate($img,270,0); header('Content-Type: image/jpeg'); imagejpeg($img); [問題のコード その3] $url = "http://example.net/example.php"; $options = array('http' => array( "method" => 'POST', "header" => "Content-Type: application/x-www-form-urlencoded\r\n" "content" => http_build_query($data), )); $contents = @file_get_contents($url, false, stream_context_create($options)); //書きだし header('Content-Type: application/x-shockwave-flash'); header('Content-Length: '.strlen($contents)); print $contents;

    • 締切済み
    • PHP
  • getとpostのメソッドがごっちゃになったようなフォームの結果は、条件によって変わる?変わらない

    getとpostのメソッドがごっちゃになったようなフォームの結果は、条件によって変わる?変わらない 以下のように、getとpostのメソッドがごっちゃになったようなフォームについて質問させてください。 ==================================================================================================== <?php //なお、PHP Version 5.1.6、CentOS4.4です。 /** 以下のように、 form tagで、actionにはクエリーストリングをつけて、でもmethodとしてpostを指定した場合、 */ ?> <form action="/phpinf.php?foo=bar&fuga=hoge" method="post" name="f"> <input type="hidden" name="text_InsideFormElementWhichDeclaresExpresslyThatMethodIsPost" value="ddddd" /> <input type="submit" name="submit" value="送信" /> </form> ==================================================================================================== の結果は、 $_GETの中身(全部)は $_GET["foo"] bar $_GET["fuga"] hoge //----------------------------------------------------------- $_POSTの中身(全部)は $_POST["text_InsideFormElementWhichDeclaresExpresslyThatMethodIsPost"] ddddd $_POST["submit"] 送信 //----------------------------------------------------------- $_REQUESTの中身(全部) は、 $_REQUEST["foo"] bar $_REQUEST["fuga"] hoge $_REQUEST["text_InsideFormElementWhichDeclaresExpresslyThatMethodIsPost"] ddddd $_REQUEST["submit"] 送信 $_REQUEST["セッションidの文字列"] fdhfdshdsfhhkfdsjfdsjf //----------------------------------------------------------- また、$_SERVER から抜粋すると、 $_SERVER["REQUEST_METHOD"] POST $_SERVER["QUERY_STRING"] foo=bar&fuga=hoge $_SERVER["REQUEST_URI"] /phpinf.php?foo=bar&fuga=hoge //----------------------------------------------------------- となりました。 こういった結果は、 OS,Webサーバ,phpやperlやrubyやasp...などの言語の種類(or 素のhtml)、 また、user agent にも関係なく、 同様の結果となるのでしょうか? さらに質問ですが、こういったformの記述は、RFCやW3Cの規約に反していないのでしょうか? ご存じの方がいらっしゃしまた、お教えいただければ幸いです。 以上、よろしくお願いいたします。

    • m_etc
    • 回答数1
  • MySQL 肥大化したテーブルへのINSERT速度

    タイトルの件について、分かる方おりましたらどなたかご教授ください。 [DBサーバ] Linux CentOS 6.4 CPU Xeon core4 SSD 250GB RAM 32GB バージョン情報 MySQL 5.5 tomcat 6 JDK 6 会員データをCSVから大量にUSERテーブルへINSERTする処理を行っています。 また、それに関連するデータも同時にINSERTをします。 (USER_ID を持っている SERVICE_POINTテーブルやADDRESSテーブル) 処理の流れとしては以下となります。 (1) 会員情報の入ったCSVファイルをサーバへアップロード (2) 1でアップロードしたCSVファイルを○○○○件毎に一時ファイルに切り分ける ~~ ここからバックグラウンドで実行 ~~ (3) 2で切り分けたファイルをループで回しながら、メアドの重複やフォーマットエラーなどを判定する (4) 3でエラーがあれば即座にERRORSテーブルにエラー詳細をINSERTし、コミット&continue; (5) 3でエラーがなければUSERテーブル・SERVICE_POINTテーブル・ADDRESSテーブルへINSERT処理 (6) その他関連するテーブルへUPDATE処理 (7) 3に戻る ストレージエンジンは全てInnoDBです。 my.cnfのInnoDBの設定は以下の通りです。 innodb-buffer-pool-size = 24G innodb-log-buffer-size = 8M innodb-log-file-size = 1024M innodb_log_files_in_group = 3 innodb_fast_shutdown = 0 innodb_data_file_path = ibdata1:10M:autoextend innodb_file_io_threads = 4 innodb_change_buffering = all innodb_thread_concurrency = 16 innodb_flush_log_at_trx_commit = 2 innodb_max_dirty_pages_pct = 90 innodb_flush_method = O_DIRECT innodb_lock_wait_timeout = 120 innodb_additional_mem_pool_size = 128M innodb_file_format = Barracuda innodb_file_per_table = 1 なお、ERRORSテーブルのINSERTは非常に速いです。 会員数が全くない状態だとスムーズに登録されていくのですが (1秒に15件程度) テーブルが肥大化して20万件を超えると1秒に1件ほどしかINSERTされません。 この速度を少しでも速くしたいなと思っています。 1件ずつコミットしているのには理由があります。 ただ、1000件ずつコミットしても速度はほぼ変わりませんでした。 こういう場合、やはりパーティショニングを検討しなければならないでしょうか。 よろしければどなたかご教授ください。 以上、よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • PHPをバージョンアップしたらCRONが動かない

    CentOSとPHPをバージョンアップしたら、CRONだけが動かなくなってしまいました。 PATH関係が変わったことが問題のような検討がつくのですが、いろいろ試してもうまくいきません。どのように解決したら良いか教えていただければと思います。 [バージョンアップ内容] CentOSを5.3から5.7にバージョンアップ PHPを5.1.6から5.3.3にバージョンアップ phpMyAdmin3.4.8をインストール MySQL 5.0.77(バージョンアップせず) バージョンアップ前には ・PHPからMySQLにデータを登録するプログラムは動作していた。(ウェブサイト形式で動作確認) ・上記のプログラムはCRONで動いていた。(CRONでも動作確認) PHP5.1.6の時はCRONに下記のように登録していました。 10 * * * * /usr/bin/php /var/cron_file/test_cron.php アップデート後にウェブサイト形式でプログラムが動くことを確認しました(ページを開くと下記のプログラムが動作し、データをMySQLに登録) phpMyAdminも問題なく動きます。 CRONの問題点を探し出すために下記のことを行いました。 CRONのステータスを確認 # /etc/rc.d/init.d/crond status crond (pid 32151) を実行中... CRONをリスタート # /etc/init.d/crond restart crond を停止中: [ OK ] crond を起動中: CRONのエラーの確認 # vi /var/log/cron PHPの場所の確認 # find / -name php /usr/share/php /usr/include/php /usr/bin/php /usr/lib64/php /var/lib/php どれがPHPの場所なのかがわからないので、とりあえず5.1.6の時に指定していた「/usr/bin/php」を採用 このあたりはネットで情報を探して、登録してみたので正しいのかどうかよくわかりません。↓ PATHの記入 (その1) # vi /root/.bash_profile PATH=$PATH:/sbin:/usr/sbin:/bin:/usr/bin export PATH (その2) #vi /etc/profile PATH=$PATH:/sbin:/usr/sbin:/bin:/usr/bin export PATH PATHの確認 # env | grep PATH PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/php (上記以外にもいろいろいじっていたら、このようになってしまいました。上記以外のところでどこで設定したかがわからないので、PATHを消す方法も教えていただければと思います) 「/usr/kerberos/sbin:/usr/kerberos/bin」はもともとシステムで登録されていたもので、上記で登録した「/sbin:/usr/sbin:/bin:/usr/bin」以外のもの「/usr/bin/php」などはどこで登録したかわからなくなってしまったものです。 CRONでPATHを指定する部分でPHPのバージョンによりPATHの値が異なるという情報を見つける /usr/bin/php /usr/bin/php5 /usr/bin/php53 各パターンで 「10 * * * * /usr/bin/●● /var/cron_file/test_cron.php」 をcrontab -eに登録してエラーを見てみる。 (1)「*/1 * * * * /usr/bin/php /var/cron_file/test_cron.php」 # vi /var/log/cron →エラーに何も表示されない (2)「*/1 * * * * /usr/bin/php5 /var/cron_file/test_cron.php」 → エラーに何も表示されない。 (3)「*/1 * * * * /usr/bin/php53 /var/cron_file/test_cron.php」 →エラーが表示される Dec 16 20:20:01 ドメイン crond[11412]: (root) CMD (/usr/bin/php5 /var/cron_file/test_cron.php) クローン自体は動いていて、エラーがでているような感じは把握できたのですがここで行き詰まりました。 PHPのパス関係か、MySQLのパス関係、PHPとMySQLの連係、そのあたりのどこかが原因なのでしょうか? 参考資料としてphpinfo()の情報を記載します。 Loaded Configuration File  /etc/php.ini PATH /sbin:/usr/sbin:/bin:/usr/bin 参考)プログラムの内容 --------------------------------------------- require_once ('/var/DB接続情報保存ディレクトリ/password.php') try { $dbh = new PDO($DSN , $DBUSER , $DBPASS); $query=<<<EOF INSERT INTO test (name) VALUES (:name) EOF; $stmt = $dbh->prepare($query);    $name='斉藤太郎'; $stmt->bindParam(':name', $name); $stmt->execute(); }//try_end catch(PDOException $e) { print "Error!: " . $e->getMessage() . "<br>"; die(); }//catch_end ---------------------------------------------

    • ベストアンサー
    • PHP
    • hpmt28
    • 回答数1
  • Mailmanインストールについて

    CentOS5.5にMailman 2.1.14+j6をインストールしているのですが、以下の画面が表示されます。 # ./configure --prefix=/usr/local/mailman --with-python=/usr/local/python/bin/python --with-mail-gid=mailman --with-cgi-gid=apache # make # make install Compiling /usr/local/mailman/Mailman/versions.py ... ERROR:root:code for hash sha224 was not found. Traceback (most recent call last): File "/usr/local/python/lib/python2.7/hashlib.py", line 139, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/python/lib/python2.7/hashlib.py", line 91, in __get_builtin_constructor raise ValueError('unsupported hash type %s' % name) ValueError: unsupported hash type sha224 ERROR:root:code for hash sha256 was not found. Traceback (most recent call last): File "/usr/local/python/lib/python2.7/hashlib.py", line 139, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/python/lib/python2.7/hashlib.py", line 91, in __get_builtin_constructor raise ValueError('unsupported hash type %s' % name) ValueError: unsupported hash type sha256 ERROR:root:code for hash sha384 was not found. Traceback (most recent call last): File "/usr/local/python/lib/python2.7/hashlib.py", line 139, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/python/lib/python2.7/hashlib.py", line 91, in __get_builtin_constructor raise ValueError('unsupported hash type %s' % name) ValueError: unsupported hash type sha384 ERROR:root:code for hash sha512 was not found. Traceback (most recent call last): File "/usr/local/python/lib/python2.7/hashlib.py", line 139, in <module> globals()[__func_name] = __get_hash(__func_name) File "/usr/local/python/lib/python2.7/hashlib.py", line 91, in __get_builtin_constructor raise ValueError('unsupported hash type %s' % name) ValueError: unsupported hash type sha512 更新の必要はありません. 上記のメッセージは、エラーなんでしょうか? Mailmanを動作させると、特に問題なく動作しているように見えます。 また、pythonのインストールは、下記の様にしています。 # ./configure \ --prefix=/usr/local/Python-2.7.2 \ --disable-ipv6 # make # make install ネットで色々調べてたのですが、全くわかりませんでした。 勉強不足で申し訳ありませんが、教えて頂けたら幸いです。 よろしくお願いします。

  • CentOS 5.4

    CentOS 5.4 Bind 9.3.6-4 bindの設定に挑戦しておりまして、わからない所があり質問させていただきます。 現在、会社で1つドメインを取り、レンタルサーバー(xrea.com)でHPを公開し、そのレンタルサーバーで社員分のメールアカウントを発行し使用しています。 仮にドメインをaaa.comとするとします。 公開しているサイトのURLは、http://www.aaa.comおよびhttp://aaa.comで閲覧できるようになっています。 やりたい事はを列挙します。 ・HP公開はレンタルサーバーでそのまま外部公開する。 ・メールアカウントはレンタルサーバーのメールサーバーでそのまま使用する。 ・内部のローカルネットに接続している各社員にaaa.comドメインでホスト名を割り振りたい。 ・内部で活用するためlinuxサーバー(192.168.24.5)を立てて、そのサーバーのホスト名もaaa.comドメインで解決できるようにしたい。 この希望を満たしつつ各社員のPCのインターネットおよび内部ホストの名前解決を正しくできるようにbindの設定を行っていますが、 行き詰ってしまいました。 以下にnamed.confとzoneファイルを記します。 ////////////////////////////////////////////////////////////////named.confここから acl localnet { 192.168.24.0/24; 127.0.0.1; }; options { listen-on port 53 { 127.0.0.1; }; listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; }; allow-query-cache { localhost; }; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; view "local" { match-clients { localnet; }; recursion yes; zone "." { type hint; file "named.ca"; }; zone "aaa.com" { type master; file "named.aaa.local"; }; zone "0.0.127.in-addr.arpa" { type master; file "named.0.0.127.in-addr.arpa"; }; zone "24.168.192.in-addr.arpa" { type master; file "named.24.168.192.in-addr.arpa"; }; }; view "world" { match-clients { any; }; allow-query { any; }; recursion no; zone "aaa.com" { type master; file "named.aaa"; }; }; //named.confここまで どこがいけないのかご指導いただけないでしょうか?

  • セキュアなウェブサイトを作る課題で悩んでます

    こんばんわ。 できるだけセキュアなウェブサイトを作りなさいという課題で悩んでいます。 他のソフト(Poderosa等)で証明書を使用するのがあったので、Webブラウザでも以下のようなことができないかと思っています。 1)Webブラウザではhttpsでアクセスする。 2)サイトは証明書がないと見れないようにする。 3)証明書はダウンロードとかではなく、管理者からメールで送られてきた証明書ファイルを使用する。 4)証明書ファイルをインストールする時はパスワードを必要とする。 5)証明書インストール後は普通にサイトが見れる。 6)サイトが見れた後はログイン画面等別のセキュリティ設定を。 環境は仮想PCにCentOS6.4+Appachで用意しました。 6)については別のセキュリティなので無視します。 とりあえず見様見真似でopensslを使ってkey、csr、crtファイルを作り、/etc/pki/tls/certs/にセットしてみました(オレオレ証明書?)。IEからは「この Web サイトのセキュリティ証明書には問題があります。」というエラーが出ます。これは認証を受けてないからだとは思いますが、「このサイトの閲覧を続行する (推奨されません)。 」の項目があり先が見えてしまいます。続行するとアドレスバーに証明書のエラーと出ていますが、詳細を見ると強引にインストールできてしまいます。 結局のところ2)から何もできていないのですが、上記のようなサイトは作ることは可能でしょうか? 証明書は認証を必ず受けないとできないものでしょうか? 大雑羽な説明になって申し訳ありませんが上記について教えていただけないでしょうか。 参考サイト等もあれば教えていただけないでしょうか。 普段使ってるブラウザで裏でどういうことが行われているのが全く考えたことがなかったので、調べるとあまりの無知っぷりに驚いています。 よろしくお願いします。