0

私は codeigniter の mod_rewrite をたくさん読みましたが、それらの多くは .htaccess ファイルを作成し、ファイル内に次のようなものを作成することについて話していました。

私は codeigniter の初心者なので、YouTube のチュートリアルから学んでいます。最初はphpを実行するためにapache 2.2しかインストールしていませんでしたが、mod_rewriteでcodeigniterを使用した後、wampをインストールする方が簡単であることに気付いたので、apache、mysqlをアンインストールしてから、すべてを備えたwampをインストールしました。

その後、mod_write に関する YouTube のチュートリアルを続けました。モジュールをワンプで有効化しました。

ルートフォルダーである ci_intro 内にこの .htaccess ファイルを作成しました

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /ci_intro/

#Removes access to the system folder by users.
#Additionally this will allow you to create a System.php controller,
#previously this would not have been possible.
#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

#When your application folder isn't in the system folder
#This snippet prevents user access to the application folder
#Submitted by: Fabdrol
#Rename 'application' to your applications folder name.
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

</IfModule>

<IfModule !mod_rewrite.c>
    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    # Submitted by: ElliotHaughin

ErrorDocument 404 /index.php
</IfModule>

config/config.php に移動して変更しました

$config['index_page'] = '';

うまくいきませんでした。404エラーが発生し、いくつかのことを試していました

RewriteBase /ci_intro/

また、プロジェクト全体を削除しました。これは、mod_write を試す直前にバックアップしたためです。バックアップを取得した後でも。エラー404ページがまだ表示されません。

私はただ取得し続けます..

ci エラー

私は wamp を使用しているので、ローカルホストに移動すると、ci_intro である私のプロジェクトを示すセクションがあります...それをクリックすると、上の画像が表示されます。マウスを上に置いて、マウスが上にあるときに表示されるリンクが何であるかを確認すると、リンクが表示されます

[コード] http://localhost/ci_intro[コード]

ここで何が起こっているか知っている人はいますか?

4

1 に答える 1

0

取得しているブラウザ ページは、偽のドメイン名または未登録のドメイン名を使用した結果です... ブラウザはそれを IP アドレスに解決できないため、リクエストを検索用語として再解釈することで「役立ちます」。

これは、「localhost」ではなく「www.domain.tld」を使用して Web サイトにアクセスしているためです。

どの WAMP ディストリビューションを使用しているかはわかりませんが (多くの「WAMP」があります)、オプションは次のとおりです。

A) Windows Hosts ファイル (C:\Windows\system32\drivers\etc\hosts) を編集して、「www.domain.tld」をローカル IP アドレス 127.0.0.1 に解決します (また、VirtualHost または Server にそのドメインがあることを確認します)。その ServerName ディレクティブの一部としての名前)。

B)代わりに「localhost」を使用してください...http://localhost/

C) Web サイトの VirtualHosts を自動的にセットアップし、Wamp-Developer Pro のような LocalDNS 機能を備えた WAMP を使用するため、上記のいずれも問題ありません。

これに合格すると、他にも問題が発生する可能性があります... .htaccess ファイルは DocumentRoot フォルダー自体にあるはずだと思います。

于 2013-05-26T14:01:07.540 に答える