0

我将首先指出我是一个拥有 .htaccess 内容和服务器相关内容的大菜鸟。

因此,我使用 wamp 在本地建立了一个网站,并使用了一个 .htaccess 文件,该文件是通过谷歌搜索找到的。

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

RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php?/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>

我显然用真实的文件夹名称替换了“my_project_folder_name”。这在我的本地服务器上完美运行。我决定将网站上传到我的近乎自由的语音服务器,但我在使用 mod_rewrite 时遇到了一些问题。我不知道我应该用什么替换“my_project_folder_name”,而且我无法让它工作。我尝试将其留空,并且有效,但由于某种原因,这导致了一个错误,导致我的脚本无法接收 POST 数据。好吧,我假设这就是导致错误的原因。

有人可以指出我正确的方向吗?

4

1 回答 1

1

出于帮助目的,请检查。

  1. 检查 apache 设置是 rewrite_module 设置是否正确?

  2. 如果您的文件夹名称由两个单独的单词组成,例如“XYZ ABC”,请尝试“XYZ_ABC”并对您的 .htaccess 文件执行相同操作。

  3. 查看它属于 codeigniter (PHP FRAMEWORK) 的文件。因此,如果您不使用它,请尝试使用..

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /my_project_folder_name/
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php?/$1 [L]
    </IfModule>
    

希望你的问题能得到解决.. :)

于 2013-08-09T19:09:06.880 回答