更改URL PHP jQuery或mod_rewrite

时间:2011-11-29 11:51:55

标签: php jquery url hyperlink

我安装了XAMPP,我在localhost /上运行了一切 所以想象我有localhost / website / index.php或www.website.com/index.php;

如何删除index.php和/或用类似的东西替换它? localhost / website / :)或www.website.com /:)

或显示它; localhost / website或www.website.com

实施例

$URLcapture = $_SERVER['PHP_SELF'];
$URLcustom = ":)";

$_SERVER['PHP_SELF'] = $URLcustom;
echo $_SERVER['PHP_SELF'];

这显示:)当然但我怎么能在我的URL中得到:)?

谢谢你, F4LLCON

修改

在加载的模块下,我可以看到mod_rewrite。

在一切之前的步骤 - 开始 - 在httpd.conf中我删除了;

# from infront of LoadModule rewrite_module modules/mod_rewrite. 

更改;

<Directory />
    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Deny from all
</Directory> 

<Directory "C:/xampp/cgi-bin">
    AllowOverride All
    Options +FollowSymLinks
    Order allow,deny
    Allow from all
</Directory>

一切之前的步骤 - 结束 -

在.htaccess中我添加了

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

并尝试了

RewriteEngine On
RewriteBase /
RewriteRule index.php nieuw.php

我做错了什么?

编辑2

没有触及.htaccess一切工作。 1.关闭xampp和apache。

  1. 在C:\ xampp \ apache \ conf;
  2. 中编辑了httpd.conf

    2a从上述步骤开始;

    2a之前的步骤 - 开始 - 直到

    2a之前的步骤 - 结束 -

    2B。添加在http.conf;

    的末尾
    <IfModule mod_rewrite.c>  
    RewriteEngine on  
    RewriteRule ^/home$ /spiderweb/Web-projects/Web-stage/Nieuwidw/index.php 
    RewriteRule ^/link$ /spiderweb/Web-projects/Web-stage/Nieuwidw/link.php 
    RewriteRule ^/contact$ /spiderweb/Web-projects/Web-stage/Nieuwidw/contact.html
    RewriteRule ^/about$ /spiderweb/Web-projects/Web-stage/Nieuwidw/about.html
    </IfModule>
    
    1. 启动xampp / apache并输入localhost / home
    2. 3A。该网站将打开但布局不存在。所以它不加载style.css

      3B。 .css在;

      3B。 C:\ XAMPP \ htdocs中\蜘蛛网\ Web的项目\ Web的阶段\ Nieuwidw \包括

      3c上。图像在;

      3c上。 C:\ XAMPP \ htdocs中\蜘蛛网\ Web的项目\ Web的阶段\ Nieuwidw \包括\图像

      下一步

      1. 在家中,您可以在每个产品下看到“更多”按钮,如果您按下更多,您将被重定向到link.php中的产品页面,但每个产品都会在URL中获取自己的ID;
      2. 4A。 http://localhost/link.php?id=126所以页面出现了;找不到因为URL不同

        如何解决这些问题?

2 个答案:

答案 0 :(得分:2)

在php中:

header("Location: http://www.example.com/");

但最好的方法是使用htaccess(如ManseUK所说)

答案 1 :(得分:1)

如果您能够以最好的方式执行此操作是使用mod_rewrite - 那么您将包含如下所示的规则并且index.php被隐藏

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