Help with mod_rewrite

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Hermann.Richter@gmail.com

    Help with mod_rewrite

    I want to rewrite URLs like


    to


    In other words, I want to strip out the php extension

    I tried putting in the .htaccess file the following:

    DefaultType application/x-httpd-php

    But that didn't work at all.

    So I tried with mod_rewrite:

    RewriteRule /[^/\.]+$ %{REQUEST_FILEN AME}.php

    It doesn't work either!!!

    I need help please. What is the problem??

    My hosting server is apache 1.3.37


    Thanks in advance.

  • petersprc@gmail.com

    #2
    Re: Help with mod_rewrite

    Hi,

    You could use the ForceType directive to serve PHP URLs without a file
    extension. For example:

    <FilesMatch "^[^\.]*$">
    ForceType application/x-httpd-php
    </FilesMatch>

    That would treat every file with no extension as a PHP script. On disk
    the file path could be "/dir/file", and the URL would be "/dir/file".

    Not sure if that's what you wanted. You can also use mod_rewrite in
    this scenario. For example:

    RewriteEngine On
    RewriteRule ^([^\.\?]+)(\?.*)?$ $1.php$2

    That would internally convert incoming URLs that lacked a file
    extension into .php requests. It would convert "file?a=b" into
    "file.php?a =b". You would then create a script called file.php.

    I think the ForceType way is probably easier. Is that what you needed?

    Hermann.Richter @gmail.com wrote:
    I want to rewrite URLs like

    >
    to

    >
    In other words, I want to strip out the php extension
    >
    I tried putting in the .htaccess file the following:
    >
    DefaultType application/x-httpd-php
    >
    But that didn't work at all.
    >
    So I tried with mod_rewrite:
    >
    RewriteRule /[^/\.]+$ %{REQUEST_FILEN AME}.php
    >
    It doesn't work either!!!
    >
    I need help please. What is the problem??
    >
    My hosting server is apache 1.3.37
    >
    >
    Thanks in advance.

    Comment

    • Hermann.Richter@gmail.com

      #3
      Re: Help with mod_rewrite

      That's exactly what I need.

      But I dont have access to httpd.conf, so it mut be done on .htaccess
      files.

      The fileMatch tag can be on a .htaccess file??



      petersprc@gmail .com wrote:
      Hi,
      >
      You could use the ForceType directive to serve PHP URLs without a file
      extension. For example:
      >
      <FilesMatch "^[^\.]*$">
      ForceType application/x-httpd-php
      </FilesMatch>
      >
      That would treat every file with no extension as a PHP script. On disk
      the file path could be "/dir/file", and the URL would be "/dir/file".
      >
      Not sure if that's what you wanted. You can also use mod_rewrite in
      this scenario. For example:
      >
      RewriteEngine On
      RewriteRule ^([^\.\?]+)(\?.*)?$ $1.php$2
      >
      That would internally convert incoming URLs that lacked a file
      extension into .php requests. It would convert "file?a=b" into
      "file.php?a =b". You would then create a script called file.php.
      >
      I think the ForceType way is probably easier. Is that what you needed?
      >
      Hermann.Richter @gmail.com wrote:
      I want to rewrite URLs like


      to


      In other words, I want to strip out the php extension

      I tried putting in the .htaccess file the following:

      DefaultType application/x-httpd-php

      But that didn't work at all.

      So I tried with mod_rewrite:

      RewriteRule /[^/\.]+$ %{REQUEST_FILEN AME}.php

      It doesn't work either!!!

      I need help please. What is the problem??

      My hosting server is apache 1.3.37


      Thanks in advance.

      Comment

      • petersprc@gmail.com

        #4
        Re: Help with mod_rewrite

        Yep, ForceType can be used in .htaccess. (Not sure if AllowOverride
        needs to include FileInfo?)

        Hermann.Richter @gmail.com wrote:
        That's exactly what I need.
        >
        But I dont have access to httpd.conf, so it mut be done on .htaccess
        files.
        >
        The fileMatch tag can be on a .htaccess file??
        >
        >
        >
        petersprc@gmail .com wrote:
        Hi,

        You could use the ForceType directive to serve PHP URLs without a file
        extension. For example:

        <FilesMatch "^[^\.]*$">
        ForceType application/x-httpd-php
        </FilesMatch>

        That would treat every file with no extension as a PHP script. On disk
        the file path could be "/dir/file", and the URL would be "/dir/file".

        Not sure if that's what you wanted. You can also use mod_rewrite in
        this scenario. For example:

        RewriteEngine On
        RewriteRule ^([^\.\?]+)(\?.*)?$ $1.php$2

        That would internally convert incoming URLs that lacked a file
        extension into .php requests. It would convert "file?a=b" into
        "file.php?a =b". You would then create a script called file.php.

        I think the ForceType way is probably easier. Is that what you needed?

        Hermann.Richter @gmail.com wrote:
        I want to rewrite URLs like

        >
        to

        >
        In other words, I want to strip out the php extension
        >
        I tried putting in the .htaccess file the following:
        >
        DefaultType application/x-httpd-php
        >
        But that didn't work at all.
        >
        So I tried with mod_rewrite:
        >
        RewriteRule /[^/\.]+$ %{REQUEST_FILEN AME}.php
        >
        It doesn't work either!!!
        >
        I need help please. What is the problem??
        >
        My hosting server is apache 1.3.37
        >
        >
        Thanks in advance.

        Comment

        • rh

          #5
          Re: Help with mod_rewrite


          <Hermann.Richte r@gmail.comwrot e in message
          news:1161205984 .787026.311810@ m73g2000cwd.goo glegroups.com.. .
          I want to rewrite URLs like
          <snip>
          My hosting server is apache 1.3.37
          It's an Apache server question, not PHP

          Read the Apache docs for Options (Content negotiated MultiViews).

          Options +MultiViews


          Rich


          Comment

          Working...