We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 16486
    • 21 Posts
    お世話になります、kuwaです。

    書籍MODxでつくる最強のCMSサイトを参考にXAMPPを利用しローカル環境でMODxをインストールしました。
    フレンドリーURLを有効にするにあたり管理画面での設定(P55)、mod_rewrite.soの#を削除(P61)、
    /XAMPP/htdocs/htaccessの一部を(htaccessファイルは前に . を付けて保存できないので .txtで保存)

    RewriteEngine On
    RewriteBase /MODx
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA,NC]

    に変更したのですがフレンドリーURLが使えていないようで、又、/localhostでデモサイトでメニューのBlogなどに移動しても404エラーとなります。
    他の方の書き込みやサイトを参考にしてみたのですが理解できずに困っています。
    どうぞ、アドバイスを頂けないでしょうか よろしくお願いいたします。
      • 6158
      • 224 Posts
      取り急ぎ、名前の変更方法を。


      方法その1 : コマンドプロンプトで改名

      > rename htaccess.txt .htaccess


      方法その2 : コマンドプロンプトでリダイレクト

      > type htaccess.txt > .htaccess
        • 16486
        • 21 Posts
        custarさん早速のお返事ありがとうございます
        上記方法でHTACCESS ファイルが出来上がりました。htdocs/,manager/に元にあったhtaccess.txtと入れ替えて
        localhostでサイトにアクセスしたのですがError500が出るようになってしまいました。
        よろしければ引き続きのフォローよろしくお願いいたします。
          • 6158
          • 224 Posts
          最も基本的な部分が設定されていないのではないかと思われます。

          apache が rewrite を使えるようになっているかどうか。

          httpd.conf の該当が所を変更し、rewrite を有効にしてください。
            • 15611
            • 19 Posts
            kenです。こんにちは。
            localhostでサイトにアクセスしたのですがError500が出るようになってしまいました。
            経験的にですが、htaccessをいじってて500エラーが出る場合は、大抵どっかに文法ミスがある気がします。

            htaccessを一度リネームしなおしてhtaccessを読まないケースを見てみたり、コメントがはずされている(有効になっている)箇所を見直すことで、原因が分かるかもしれません。
            ログとかは分かりませんか?あと、権限周りも見てみるとよいかもしれません。

            ちなみに、どういったディレクトリ構成になっているのかも書くと、有益な返信が得られるかもしれません。
              • 16486
              • 21 Posts
              custerさんkenさんお返事ありがとうございます。 

              C:\xampp/htdocs/htaccessをフォルダからデスクトップに移動させてlocalhostにアクセスするとトップ画面が表示できましたので、まず記述間違いを探してみたいとおもいます。

              ディレクトリ構造はC:¥XAMPP/htdocsにDOMx本体解凍後のmodx-0.9.5内のファイルをすべてコピーしました。

              C:\xampp/htdocs/htaccessに
              php_flag register_globals off
              Options None
              <FilesMatch "^\.ht"> (\は¥となっている)
              Order allow,deny 

              RewriteEngine On
              RewriteBase /MODx
              RewriteCond %{REQUEST_FILENAME} !-f
              RewriteCond %{REQUEST_FILENAME} !-d
              RewriteRule ^(.*)$ index.php?q=$1 [L,QSA,NC]    を追加し

              C:\xampp/htdocs/manager/htaccessの内容は RewriteEngine Off 一行のみの記述です
              C:\xampp/apache/conf/httpd.confは LoadModule rewrite_module modules/mod_rewrite.soの#を外してあります。

              ログと権限についても基本的な部分が理解出来ていない為、皆様への返答も的を外したりで申し訳ありません。


                 




                • 19033
                • 892 Posts
                こんにちは。

                ちょっと気になったのですが、
                <FilesMatch "^\.ht"> (\は¥となっている)
                  Order allow,deny 


                …の後は、こちらへの書き忘れでしょうか。。?
                上記のまんまだと動かないんじゃないかと思います。
                私も詳しくないんですけど。。

                本をお持ちならば、p76に上記の続きがあります。
                  • 16486
                  • 21 Posts
                  がちょ~ん shocked
                  お返事を見て我ながら間抜けさに、心底びっくりしてしまいました。
                  皆さんお手数をおかけしまして申し訳ありません。
                  しかしながら現在もトップページにはいけるのですがlocalhost/index.php?id=15などとなり server error 500 の状態です。 :’(

                  追加

                  php_flag register_globals Off(元もと#がついていたが外した)
                  Options None
                  <FilesMatch "^\.ht">
                  Order allow,deny
                  Deny from all
                  </FilesMatch>

                  と記入したところトップページにも入れず403エラーとなってしまいました。

                  MODxで使用する文字コードをUTF-8としてインストールしたのですが
                  htaccessはメモ帳から作るときシフトJISでエンコードし、コマンドプロンプトにてHTACCESS ファイル化しました。
                  このような事は何か問題となるでしょうか?

                  どうぞ、よろしくお願いいたします。
                    • 33488
                    • 429 Posts
                    RewriteBase /MODx
                    を

                    RewriteBase /
                    にしてらどうなります??
                    500エラーだと、別の気もしますが・・・。

                    php_flag register_globals off
                    Options None
                    <FilesMatch "^\.ht"> (\は¥となっている)
                      Order allow,deny 
                    </FilesMatch>
                    
                    RewriteEngine Off
                    RewriteBase /
                    RewriteCond %{REQUEST_FILENAME} !-f
                    RewriteCond %{REQUEST_FILENAME} !-d
                    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA,NC] 
                    


                    まずは、Offで正常動作するかどうかですね
                    これでも500のエラーが出るようだと、httpd.confを再度見直してみてください。
                    Option周りかも・・・error.logになんかメッセージ出ていませんか??

                    Offで動くなら、Htaccessになんか問題があるんではないかと思われますが、そうであればerror.logになんか出ているんじゃないかと思います。
                    XAMPPのWin版ということであれば、xamppのapacheの下のlogsにerror.logがあります。
                      • 16486
                      • 21 Posts
                      ZeRoさんお返事ありがとうございます。

                      RewriteEngine Offにするとトップにも入れず404エラーとなります。
                      Onにすると403エラーとなっています。この時のエラーログは
                      [Thu May 17 23:02:19 2007] [error] [client 127.0.0.1] Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden: C:/xampp/htdocs/blog.html, referer: http://localhost/index.php?id=9
                      となっています。