We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 19033
    • 892 Posts
    自分で、試したり、ドキュメントを読んで、自分なりに理解したことを解説してみました。
    間違いも多くあるかも知れません。どうぞ、ご指摘下さい。
    また、書いてある内容を試す場合は、自己責任でお願い致します。

    概要:
    SEO Strict URLs プラグインは、フレンドリURLを利用している場合にMODxがはき出してしまう複数のURLをひとつに統一します。
    複数のURLを持つページは、サーチエンジンなどからペナルティを課せられる場合があります。このプラグインはそれを避けることができるでしょう。

    詳細
    詳細 http://modx.liolion.net/resource/seo_strict_urls.html
    (現在サイトには導入済)

    関連トピ:ディレクトリ構造を通常のサイト風にする方法。
    http://modxcms.com/forums/index.php/topic,16337.0.html
    Phizeさんが、改造版を公開されています。
      • 21131
      • 50 Posts
      MEGUさん
      こんにちは
      お世話になります。
      いまいち理解出来てないので確認したいのですが
      Phizeさんのページの下記の部分なのですが
      .フレンドリーURLの設定を変更
       【フレンドリーURLの設定】
        フレンドリーURLの使用: Yes
        フレンドリーURLの接頭辞/接尾辞: なし
        フレンドリーエイリアス: Yes
        エイリアスパスを使用: Yes
        重複エイリアスを許可: No
        自動エイリアスを作成: No

      確認したいのですが上記の設定にしているのですが
      フレンドリーURLの接頭辞/接尾辞: .htmlにするとCGIWrap Error: Real UID could not be changed!
      となってしまいます

        • 21772
        • 69 Posts
        こんにちは noriです。

        回答になっていなくて申し訳ありません、私もSEO Strict URLsを使っていますが。
         フレンドリーURLの接頭辞/接尾辞: なしでもエラーは出ません。

        逆に、ドキュメントエイリアスを、hogehoge.htmlとしている
        ので、フレンドリーURLの接頭辞/接尾辞: .htmlにしてしまうと
        ドキュメントエイリアスをhogehoge.htmlとしたページにアクセス
        すると、hogehoge.html.html になってしまいます。

        接頭辞/接尾辞: なしにする事により、スニペットGoogleSiteMap
        などでsitemap.xmlを作成した場合に、ちゃんとsitemap.xmlと
        する事が出来ます。
        フレンドリーURLの接頭辞/接尾辞: .htmlにしてしまうと sitemap.xml.html
        とかにになってしまいますね。

        また、SEO Strict URLsを使うとPhizeさんのページに解説がある
        ように 「file.html&パラメータ名=値」という形式でアクセスされた場合に、
        パラメータはスニペットには渡されず、そのまま「file.html」にリダイレクトされます。
        (「file.html?パラメータ名=値」で渡せば問題ないのですが)

        自分はこれで、自作のスニペットが動かず はまったので、Phizeさんの改良版を使
        うことをお勧めします。
        (私がサイトを立ち上げた時にはPhizeさんの改良版がまだ無かったので、
        SEO Strict URLsをそのまま使っていますが、今度入れ替える予定です。)
          • 23276
          • 85 Posts
          こんにちは、Phizeです。

          >>MEGUさん

          いつも日本語でのリソースの解説、ありがとうございます smiley


          >>nekoaiboさん

          エラーは、(セーフモード対策とかで)PHPをCGIモードで動かしているときに発生するものではないでしょうか?
          cronや他のcgiが同時に動いているなど負荷がかかっていると出るエラーみたいです。
          うちはCGIモードで動かしていないのでお力になれないのが残念ですが undecided

          接頭辞・接尾辞は、noriさんのような例があるので、私は設定しないほうがしっくりくるかなあと感じています。
          手動で設定したい場合は、プラグイン設定「manual overrides」を「1」にして、各ドキュメントのテンプレート変数「seoOverride」で書き換えの動作を変更できるみたいですけど、
          やっぱり面倒なので、私も接頭辞・接尾辞はなしにして使ってます grin
            • 21131
            • 50 Posts
            >>noriさん
            こんにちは
            有難う御座います。
            Phizeさんの改良版入れてみました。
            問題なく作動しているようです。
            貴重なアドバイス感謝いたします。

            >>Phizeさん
            こんにちは
            確かにPHPをCGIモードで動かしています。
            ページIDを入力した場合に出るようなので放置する事に決めました。
            modxで商業ページを作ろうと思ってるのでSEO対策は気になっていて
            改良版はほんとに助かります有難う御座いました。
              • 19033
              • 892 Posts
              こんにちは。

              Phizeさん。noriさん。ありがとうございます。
              nekoaibo さん。解決されて良かったです。

              あ、こちらは:
              接頭辞/接尾辞: なしにする事により、スニペットGoogleSiteMap
              などでsitemap.xmlを作成した場合に、ちゃんとsitemap.xmlと
              する事が出来ます。
              フレンドリーURLの接頭辞/接尾辞: .htmlにしてしまうと sitemap.xml.html
              とかにになってしまいますね。

              オプションで「Base name」を指定することにより、
              エイリアスに入力した値をそのままはき出すので、たとえば、接尾辞が
              「.html」になっていても、エイリアスが「sample.xml」ならば、そのまま
              「sample.xml」と出力されます。
                • 21131
                • 50 Posts
                MEGU さん
                こんにちは
                なるほど了解しました。
                有難う御座います。
                  • 36592
                  • 970 Posts
                  こんばんわ!
                  Quote from: MEGU at Aug 14, 2007, 07:01 AM

                  オプションで「Base name」を指定することにより、エイリアスに入力した値をそのままはき出すので、
                  たとえば、接尾辞が「.html」になっていても、エイリアスが「sample.xml」ならば、
                  そのまま「sample.xml」と出力されます。
                  プラグインをオリジナルのまま使っていますが、上述の機能でちょっと困っています。

                  Wayfinderで吐き出させれば、ちゃんとリンク先URLが「sample.xml」となるんですが、
                  [~11~]みたいにid直接だと「sample.xml.html」になっちゃうんですよ...

                  Wayfinderと[~id~]では呼び出されるURL生成機能が違うんでしょうか? huh
                    • 19033
                    • 892 Posts
                    こんにちは。

                    うーんと。例えば、テンプレートに以下のように書いて
                    <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="[~55~]" />


                    docid55のエイリアスには「modx_indx.xml」、
                    seoOverrideでは「Base Name」を指定、
                    MODx設定では、接尾語を「.html」にしている場合、

                    出力されるURLが「modx_index.xml」でなくて
                    「modx_index.xml.html」になっちゃうと言うことですか?

                    うちの場合は、うまくいっているのですが、もっと複雑な例なのでしょうか。。?

                    あ、あるいは、「SEO Strict URLs 1.0.1」プラグイン側の設定で
                    「Enable manual overrides」は、「1」になってます。。??
                      • 36592
                      • 970 Posts
                      Quote from: MEGU at Aug 15, 2007, 05:47 AM

                      うーんと。例えば、テンプレートに以下のように書いて
                      <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="[~55~]" />

                      docid55のエイリアスには「modx_indx.xml」、
                      seoOverrideでは「Base Name」を指定、
                      MODx設定では、接尾語を「.html」にしている場合、
                      出力されるURLが「modx_index.xml」でなくて
                      「modx_index.xml.html」になっちゃうと言うことですか?
                      そうなんです。全くそのとおりです。
                      Quote from: MEGU at Aug 15, 2007, 05:47 AM

                      うちの場合は、うまくいっているのですが、もっと複雑な例なのでしょうか。。?
                      あ、あるいは、「SEO Strict URLs 1.0.1」プラグイン側の設定で
                      「Enable manual overrides」は、「1」になってます。。??
                      もちろんなっています。
                      メニュー表示をオンにしてWayfinderで吐き出させれば、ちゃんと「modx_index.xml」になりますから...
                      [~id~]形式で吐き出させたときだけおかしくなってます。

                      MEGUさんのところでは問題なく動作しているのであれば、こちらの環境の問題ですね~
                      MODx0.9.5ですし、過去に若干独自に改造した経緯のある部分なのでそのせいかも...
                      別の環境で一度試してみます。