vsftpで設定したサーバにFTP接続できない(パッシブモード)

vsftpをサーバにインストールし、各種設定を行った後、FTP接続しようとしたのですが、なぜか接続できない。

vsftpd.confやchroot_list、hosts.allow、hosts.deny、user_listを確認しても、特に問題なし。

ファイヤーウォールを確認しても、ちゃんと20・21は設定されている。

なぜ・・・

と思い、エラー内容を確認したところ、ログイン自体は成功しているもののLISTでエラーが出ている様子。

ということで、ググってみたら、こちらのページを見つけました。

vsftpでpasvモードでの接続設定 - watuu's diary

/etc/sysconfig/iptables-config に設定が必要とのこと。

このファイルの「IPTABLES_MODULES」を

IPTABLES_MODULES="ip_conntrack_netbios_ns ip_conntrack_ftp ip_nat_ftp"

としたところ、無事接続できるようになりました。

ちなみに、この設定を行っていない場合でも、接続設定がアクティブだと接続できます。

総合管理者 | 2016年02月10日 | コメント(0) | トラックバック(0) | サーバー関連

Search Console(ウェブマスターツール)でインデックス数が激減

このサイトのURLを

http://www.nandani.sakura.ne.jp/

から

http://nandani.sakura.ne.jp/

に変更しました。(wwwなし)

理由はwwwあり・なし両方でアクセスできるとSEO的に良くないのが1点(いまさら)

もう1つは、さくらインターネットのサブドメイン(○○○.sakura.ne.jp)でSSLが使えるのが、www無しのみだったので、http://nandani.sakura.ne.jp/をメインURLとしました。(httpsの方がSEO的に良いらしいので。さくらインターネット特有のくせで、記事ページにhttpsでアクセスするとおかしくなるため、まだ変えてませんが。)

そうしてみたところ、Search Consoleのインデックス数が激減。

まあ当たり前です。

これまでは「http://www.nandani.sakura.ne.jp/」で登録されていたのに、wwwなしになったわけですから。

しばらくしたら治るだろうと思っていたのですが、一向に増える気配はなく、何ならどんどん減っていきます。

ただでさえ減ってたのに!

なんで?と思い、よくよくSearch Consoleに送っているsitemap.xmlを見てみたら、そこに記述されているURLが「http://www.nandani.sakura.ne.jp/」になっているではありませんか。

サイトマップ書き出しには「Google XML Sitemaps」を使っているのですが、どうやらキャッシュっぽい感じで残っており、それが送信されてたらしい。

通りで全然インデックスされないわけだ。

ということで、設定>XML-Sitemapから設定を更新したら、無事「http://www.nandani.sakura.ne.jp/」で出力されるようになりました。

 

インデックスが減っていたとはいえ、あんまりアクセス数は変わってないんですよね。

メインの流入はGoogleからのはずなんだけどなぁ。

総合管理者 | 2016年01月20日 | コメント(0) | トラックバック(0) | CMS関連 | PHP関連 | SEO関連

EC-CUBEでクレジットカード決済が表示されない

EC-CUBEで「イプシロン決済モジュール」を導入し、設定も一通り完了したのですが、なぜか商品購入フローの「お支払方法・お届け時間等の指定」で「クレジットカード決済」の選択が表示されないという現象になってしまいました。

イプシロン側の設定も、EC-CUBE側のイプシロンモジュールの設定も問題なく見えます。

基本情報管理>支払方法設定にも、ちゃんと「クレジットカード決済」は追加されています。

なぜ登録されない・・・と「LC_Page_Shopping_Payment.php」の中身を調べてみたところ

if (in_array($payment['payment_id'], $payments_deliv)) {

というところではじかれている様子。

deliv・・・ということはと、基本情報管理>配送方法設定を調べたところ、「取扱支払方法」の設定で「クレジットカード決済」にチェックが入っていませんでした。

WS002223

凡ミス・・・

総合管理者 | 2016年01月19日 | コメント(0) | トラックバック(0) | CMS関連

https(SSL)の警告が消えない

とあるサイトをhttps接続に変えたところ、下図のような警告が出るようになってしまいました。

WS002198

この接続は安全ではありません
このページの一部(画像など)は安全ではありません。

ブラウザはFirefoxで、Google Chromeでも同じようなエラーになっていましました。

ソースを確認したところ、リンクURLでhttpになっているところはありましたが、画像やCSS、JSの読み込みパスはすべてhttps、もしくはスラッシュから始まる絶対パスになっています。

JS、CSS内のパスにhttp接続があるかとも思いましたが、これも違う。

特に読み込みに失敗しているようなファイルはなさそうなので、見た目上は正常なのですが、警告が出っぱなしというのは気持ち悪いし、ユーザーに不安を与えかねません。

CSS・JSを消したり戻したりして、とあるCSSが原因だと判明しました。

そのCSS内では画像が読み込まれていたのですが、そのパス自体は相対パスで問題ありません。

では、何が原因か?とよくよく見てみたところ、そのCSSで読み込もうとしている画像が存在していない・・・

これか!と思い、必要な画像をアップロードしたところ、警告が消えました。

リンク切れが起きても、この現象起こるんですね・・・

 

総合管理者 | 2016年01月04日 | コメント(0) | トラックバック(0) | CSS関連

mysqlからmysqliへ変える場合の置換(ただの正規表現について)

メモ。

mysql_queryやmysql_fetch_arrayは、PHP5.5で非推奨となり、PHP7.0では消滅するそうです。

5.5なら非推奨とはいえ使えるのですが、エラーが出るし、できれば変更しておきたい。

ということでDreamweaverなどで一括置換する場合は正規表現で置換しましょう。

mysql_fetch_arrayの場合

検索ワード:mysql_fetch_array\((.+?)\)

置換ワード:$1->fetch_array()

 

mysql_num_rowsの場合

検索ワード:mysql_num_rows\((.+?)\)

置換ワード:$1->num_rows()

総合管理者 | 2015年12月23日 | コメント(0) | トラックバック(0) | WEB関連全般

EC-CUBEテンプレート用タグ

メモ。

随時更新中・・・

パス用タグ

  • <!--{$smarty.const.ROOT_URLPATH}-->
    EC-CUBEで設定したウェブルートのURLパス。
    ドメイン:無し
    出力例:/
  • <!--{$smarty.const.TOP_URL}-->
    EC-CUBEで設定したトップページのURLパス。
    ドメイン:あり
    出力例:http://nandani.sakura.ne.jp/
  • <!--{$smarty.const.CART_URL}-->
    カートへのURLパス。
    ドメイン:あり
    出力例:http://nandani.sakura.ne.jp/cart/
  • <!--{$smarty.const.P_DETAIL_URLPATH}-->
    商品詳細ページへのベースURLパス。
    ドメイン:無し
    実際に商品ページへ行くには後ろに商品IDを付ける必要あり。
    例:<!--{$smarty.const.P_DETAIL_URLPATH}--><!--{$arrProduct.product_id|u}-->
    出力例:/products/detail.php?product_id=1
  • <!--{$smarty.const.IMAGE_SAVE_URLPATH}-->
    アップロードした画像のフォルダへのURLパス。
    ドメイン:なし
    出力例:/upload/save_image/
  • <!--{$TPL_URLPATH}-->
    テンプレートへのURLパス。
    ドメイン:無し
    出力例:/user_data/packages/default/

 

総合管理者 | 2015年12月17日 | コメント(0) | トラックバック(0) | CMS関連

商品ページの変数【EC-CUBE】

かなり雑にメモ。

EC-CUBEの商品ページ用のテンプレートで、商品情報が入っている「$arrProduct」の中身は、以下のキーで取得できます。

■product_id
■name
■maker_id
■status
■comment1
■comment2
■comment3
■comment4
■comment5
■comment6
■note
■main_list_comment
■main_list_image
■main_comment
■main_image
■main_large_image
■sub_title1
■sub_comment1
■sub_image1
■sub_large_image1
■sub_title2
■sub_comment2
■sub_image2
■sub_large_image2
■sub_title3
■sub_comment3
■sub_image3
■sub_large_image3
■sub_title4
■sub_comment4
■sub_image4
■sub_large_image4
■sub_title5
■sub_comment5
■sub_image5
■sub_large_image5
■sub_title6
■sub_comment6
■sub_image6
■sub_large_image6
■del_flg
■creator_id
■create_date
■update_date
■deliv_date_id
■plg_giftpaper_noshi
■product_code_min
■product_code_max
■price01_min
■price01_max
■price02_min
■price02_max
■stock_min
■stock_max
■stock_unlimited_min
■stock_unlimited_max
■point_rate
■deliv_fee
■maker_name
■price01_min_inctax
■price01_max_inctax
■price02_min_inctax
■price02_max_inctax

取得例:商品IDを取得する場合

<!--{$arrProduct.product_id}-->

総合管理者 | 2015年12月11日 | コメント(0) | トラックバック(0) | CMS関連 | PHP関連

Linuxでファイルの中に記述さている文字列を検索する方法

Linuxでファイルの中に記述されている文字列の検索方法です。(タイトルのまま)

まずはTeraTermなどで、サーバにSSH接続してください。

検索したいフォルダまで移動してください。

下記のコマンドを実行してください。

find ./ -type f -name "*.(拡張子)" -print | xargs grep '(検索ワード)'

  • -name "*.(拡張子)":
    特定の拡張子のファイルのみを対象としたい場合は、拡張子も入力してください。
  • grep '(検索ワード)':
    検索したい文字列を入力してください。

例:PHPファイルの中身にhogeが記述されているファイルを検索。

find ./ -type f -name "*.php" -print | xargs grep 'hoge'

 

参考サイト

 

総合管理者 | 2015年11月02日 | コメント(0) | トラックバック(0) | サーバー関連

WordPressの見落としがちな設定(ゴミ箱)

お客様から、記事が勝手に消えてしまったという連絡を受けました。

話をよく聞いてみると、とりあえず非公開にしたいからゴミ箱に移動させていたとのこと。

いや、そういう時はステータスを「下書き」にするか、公開状態を「非公開」にしてほしいのですが・・・

うっかり「完全に削除する」をクリックしてしまったのではないかと思ったのですが、よくよく調べてみると、Wordpressではゴミ箱に移動した記事は、30日経つと自動的に消えてしまうそうな。

これは知らなかった。

ちなみに、wp-config.phpに

define('EMPTY_TRASH_DAYS', 日数);

と追記することで、保存期間は設定できるらしい。

WordPressでゴミ箱から復元する方法と保存期間を変更する方法 | WordPress奮闘記

とりあえずゴミ箱には、消えても良い記事だけを入れましょう。

総合管理者 | 2015年10月17日 | コメント(0) | トラックバック(0) | CMS関連

リバースプロキシ超便利!(専用サーバに限る)

日進月歩のWEB業界。

次々に新しい技術が出てきて、めまぐるしい限りです。

どこまでついていけることやら。

しかしふと後ろを見てみると、結構取りこぼしている知識ありませんか?

ということで、最近知ったリバースプロキシについて。

 

このような事例があったとします。

とある会社で、サーバを移転し、ウェブサイトを一新することになりました。

しかし、その会社は多くの店舗をもっており、しかも店舗ごとにウェブサイトを持っています。

しかし、ドメインは1つで

  • http://www.○○○○.co.jp

が本体のサイト。

各店舗のサイトが、

  • http://www.○○○○.co.jp/□□□□
  • http://www.○○○○.co.jp/△△△△
  • http://www.○○○○.co.jp/××××

フォルダ構造になっているのでした。

さて、本体サイトの準備は出来たのですぐにでも公開したい!

しかし、他の店舗のサイトはまだ出来ておらず、しかも移行が難しいコンテンツもある。

「はやくしてくれ。」

「いやいや待ってください。そもそも移行自体が難しいコンテンツもあるんです。」

という問答の末、

「早く公開したいから、とりあえず、会社本体サイトだけでも新サーバで公開してくれんか?」

と来てしまいました。

さて、こんなときどうするか。

こんなときこそリバースプロキシですよ!(ただし移行先が専用サーバに限る。)

 

STEP.1

まず、元々のサーバ用に、サブドメインを取得し、割り当てておきます。

http://hoge.○○○○.co.jp/

 

STEP.2

新サーバのhttpd.confを開き、

<VirtualHost *:80>
ServerName www.○○○○.co.jp

</VirtualHost>

の中に、

ProxyPass 公開パス 転送先URL
ProxyPassReverse 公開パス 転送先URL

を追記します。

公開パスは、各店舗のフォルダです。

転送先URLは、サブドメインを割り当てた各店舗のURLです。

つまりこうなります。

ProxyPass /□□□□ http://hoge.○○○○.co.jp/□□□□
ProxyPassReverse /□□□□ http://hoge.○○○○.co.jp/□□□□

ProxyPass /△△△△ http://hoge.○○○○.co.jp/△△△△
ProxyPassReverse /△△△△ http://hoge.○○○○.co.jp/△△△△

ProxyPass /×××× http://hoge.○○○○.co.jp/××××
ProxyPassReverse /×××× http://hoge.○○○○.co.jp/××××

 

STEP.3

追記後はApacheを再起動して、DNSを切り替えます。(あらかじめhostsファイルを編集して、DNS切り替え後の状態を確認しておくと良いでしょう。)

 

これで、本体サイトは新サーバで稼動し、各店舗のサイトは旧サーバへ転送されます。

これがただの転送ならば、URLがサブドメインになってしまいますが、リバースプロキシならば、ドメインが「www.○○○○.co.jp」のまま、旧サーバのページを開きます。

 

う~ん、便利だ。

 

参考サイト

総合管理者 | 2015年10月17日 | コメント(0) | トラックバック(0) | サーバー関連

Copyright(c) 2010 - 2017 ダリの雑記