Forum
J! JAPAN TOP
ようこそ, ゲスト
ユーザ名: パスワード: 自動ログイン

トピック: 「URLリライトの使用」がうまく行きません

「URLリライトの使用」がうまく行きません 7 年 3 ヶ月 ago #3602

このボードは初めてです.宜しくお願い致します.
件名の通り「URLリライトの使用」がうまく使えず困っています.
ご教示を賜れば幸いです.

実行環境は以下の通りです.
Joomla!バージョン: 2.5.6
PHPバージョン: 5.3.3
MySQLバージョン: 5.1.61
サーバ情報:
 ・CentOS6.3 + Apache2.2で使用
 ・/home/XXXX/public_htmlの直下にJoomla!を置いています
 ・httpd.confで
LoadModule rewrite_module modules/mod_rewrite.so
を実行しています

URLリライトを使わない状況,つまり,
フレンドリURL:はい
URLリライトの使用:いいえ
URLの末尾にサフィックス(.html)を追加:はい
では表示できるページが「URLリライトの使用」を「はい」にするとアクセス不能になります.

色んなサイトで指示されているように,
/home/XXXX/public_html/.htaccessを以下のように変更しました.

Options +FollowSymLinks
↓変更
# Options +FollowSymLinks

# RewriteEngine On
↓変更
RewriteEngine On

# RewriteBase /
↓変更
RewriteBase /

この状況でアクセスすると,
The requested URL /index.php was not found on this server.
というエラーメッセージが表示されたので,
blogs.yahoo.co.jp/mxjrm717/52751296.html
を参考にし,

RewriteBase /
↓変更
RewriteBase /home/XXXX/public_html/

と変更したのですが状況が変わりません.

トップページからのリンク先は,
~/XXXX/aaaa.html
のように変わっているのですが,リンクをクリックすると,結局

The requested URL /home/XXXX/public_html/index.php was not found on this server.

と表示されます.
これはURLリライトが効いてないと解釈すべきなのかとも思うのですが,
対処方法が全く分かりません.

どなたかご教示頂けませんでしょうか.
ゲストの書き込みは許可されていません。

Re:「URLリライトの使用」がうまく行きません 7 年 3 ヶ月 ago #3603

  • siraisi
  • siraisi さんのアバター
  • Offline
  • Platinum Boarder
  • 投稿数: 462
  • 感謝を受け取りました 47
  • カルマ: 32
さくらサーバのVPS ?ですか。

httpd.confにおいて、.htaccess の有効化をしてますでしょうか。

ドキュメントルートを変更しているなら
292行目 DocumentRoot "/home/XXXX/public_html"
317行目 <Directory "/home/XXXX/public_html">
338行目 AllowOverride All ←であればOK


ユーザ毎のディレクトリを設定しているのなら
381行目
<Directory /home/*/public_html>
AllowOverride FileInfo AuthConfig Limit  ←または、AllowOverride All
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>

後は

# RewriteEngine On
↓変更
RewriteEngine On

# RewriteBase /
↓変更
RewriteBase /

で良いと思います。
mail: このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。
ゲストの書き込みは許可されていません。

Re:「URLリライトの使用」がうまく行きません 7 年 3 ヶ月 ago #3607

siraisi 様

早速のご回答を頂き有難うございます.
昨日終日出張のためリプライが遅くなり申し訳ありません.

結論から申し上げますと,まだうまく行きません.

> さくらサーバのVPS ?ですか。

いえ,さくらサーバは使っておらず,私設のサーバを用いています.
参考にしたサイトがさくらサーバの情報だったというだけです.

> httpd.confにおいて、.htaccess の有効化をしてますでしょうか。
>
> ユーザ毎のディレクトリを設定しているのなら

/home/XXXX/public_htmlを作っていますのでこちらに該当します.

> 381行目
> <Directory /home/*/public_html>
> AllowOverride FileInfo AuthConfig Limit  ←または、AllowOverride All
> Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
> <Limit GET POST OPTIONS>
> Order allow,deny
> Allow from all
> </Limit>
> <LimitExcept GET POST OPTIONS>
> Order deny,allow
> Deny from all
> </LimitExcept>
> </Directory>

頂いた通りの設定をしました.

念のため,
/home/XXXX/public_html/
にベーシック認証をするための.htaccessと.htpasswdを別途作って実行すると実行できているので,.htaccessは効いていると思います.


> 後は
>
> # RewriteEngine On
> ↓変更
> RewriteEngine On
>
> # RewriteBase /
> ↓変更
> RewriteBase /

これについても設定しています.なお,参考にしたサイトによると,
RewriteBase /
でうまくいかず,
RewriteBase /home/XXXX/public_html/
を試してうまくいったとあったので,こちらも試してみましたが,どちらもダメでした.

ブラウザのアドレス欄(つまりリンク先)には
http://(サーバ名)/~XXXX/profile.html
のように表示されますが,

Not Found
The requested URL /index.php was not found on this server.

の404が返ってきます.

他に疑うべきところはあるでしょうか.

素直にDocumentRootに置いた方が良かったかなぁ….
ゲストの書き込みは許可されていません。

Re:「URLリライトの使用」がうまく行きません 7 年 3 ヶ月 ago #3608

  • siraisi
  • siraisi さんのアバター
  • Offline
  • Platinum Boarder
  • 投稿数: 462
  • 感謝を受け取りました 47
  • カルマ: 32
以下のように変更してみてください。

381行目
<Directory /home/*/public_html>
AllowOverride All ←変更
Options IncludesNoExec ExecCGI FollowSymLinks   ←変更
<Limit GET POST OPTIONS>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>

# RewriteEngine On
↓変更
RewriteEngine On

# RewriteBase /
↓変更
RewriteBase /~XXXX
mail: このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。
ゲストの書き込みは許可されていません。

Re:「URLリライトの使用」がうまく行きません 7 年 3 ヶ月 ago #3609

siraisi 様

バッチリです!!
これでうまくいきました.

大変お手数をお掛けしました.
どうも有難うございました m(__)m
ゲストの書き込みは許可されていません。