如果没有localhost前缀

时间:2017-03-02 14:11:46

标签: php apache .htaccess codeigniter wampserver

我使用的是Wamp 2.4但是必须卸载它并在3.0.8更新的同时安装3.0.6。通过在wamp tray设置中选择Add localhost选项并在应用程序的配置文件中的.htaccess和http // localhost / mysitefolder中选择/ mysitefolder /,一切正常。

但我喜欢使用virtualhost的想法,特别是使用GUI表单通过接口创建VH。我在3.0.6版安装之前创建了一个正在进行的项目的VH。现在我编辑了我正在使用的codeigniter代码的.htaccess和配置文件,以便默认情况下我可以导航到http://mysitefolder而不是localhost / mysitefolder。

问题:正确显示http://mysitefolder,但点击任何子页面链接会导致同样的浏览器错误:

  

“未找到找不到请求的网址/mysitefolder.txt/index.php   在这台服务器上。 Apache / 2.4.23(Win32)PHP / 5.6.25服务器   mysitefolder端口80“

首先,我不明白.txt扩展名来自哪里,我不知道如何修复它。

使用Windows 8.1,选择了mod重写的Apache 2.4.3。

请告知。

APACH VHOST FILe

<VirtualHost *:80>
    ServerName localhost
    ServerAlias localhost
    DocumentRoot c:/wamp/www
    <Directory  "c:/wamp/www/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    ServerName financejobs
    ServerAlias financejobs
    DocumentRoot "c:/wamp/www/financejobs"
    <Directory  "c:/wamp/www/financejobs">
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

Codeigniter应用程序HTACCSS(用于financejobs)

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /financejobs/
    RewriteCond %{REQUEST_URI} ^jp_sys.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]

    RewriteCond %{REQUEST_URI} ^jp_app.*
    RewriteRule ^(.*)$ /index.php?/$1 [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
    ErrorDocument 404 /index.php
</IfModule> 
Options -Indexes

1 个答案:

答案 0 :(得分:0)

以下是答案:

尝试将RewriteBase /financejobs/更改为RewriteBase /