2

ローカルで運営するウェブサイトを作りました。ホスト ファイルと仮想ホストを構成しました。

Adress: website.dev
DocumentRoot:  /www/website/public_html

ウェブサイトに正しくアクセスできます。

public_html フォルダーには、次のファイルがあります。

index.php
.htaccess

.htaccess ファイルを構成しようとしましたが、その経験があまりないので、何か間違ったことをしたのかもしれません。

「website.dev/users」や「website.dev/login」などのすべてのリクエストがインデックス ファイルによって処理されるため、指定された URL を処理できます。(URL:website.devはdocumentRootなのでそのままindex.phpにつながるので書き換えは不要かと思います)

rewriteRuleこれは問題なく動作しますが、ページが複数回呼び出された .htacces ファイルで .htacces ファイルを使用すると気付きました。

これは私の .htaccess ファイルです:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f


RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php  [NC,L]

すべての行をコメントアウトして、rewriteRulewebsite.dev に移動すると、自分のページが 1 回しか呼び出されていないことがわかります。.htaccess ファイルの何が二重ページ呼び出しを引き起こす可能性がありますか?

4

2 に答える 2

1

一部の条件は必須ではありません。

あなたがテストしています:

ファイルサイズ > 0 OR はシンボリックリンクです。OR はディレクトリです。OR は通常のファイルです。

/users/id を次のように書き換える以下のものがあります: index.php?url=users/id

RewriteEngine on
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule    !\.(jpg|css|js|gif|png)$    public/    [L]
RewriteRule !\.(jpg|css|js|gif|png)$ public/index.php?url=$1
于 2012-11-23T16:18:35.987 に答える
0

解決:

Apache ログ ファイルを調べて問題を見つけたので、Web サーバー (wamp) がブラウザのアドレスバーに表示する .ico ファイル (wamp ロゴ) を探していることに気付きましたが、私のプロジェクトではこのファイルが存在せず、 404 とインデックス ファイルが再度呼び出されたので、プロジェクト フォルダーに必要な ico ファイルを作成し、すべてが魅力的に機能しました。

于 2013-06-26T14:33:21.590 に答える