it-swarm.com.de

Wie kann ich saubere URLs aktivieren?

Ich habe Drupal 7 auf Wamp Server installiert. Ich kann kein Kontrollkästchen oder keinen Link zum Aktivieren sauberer URLs finden. Ich sehe nur die Schaltfläche Clean URL Test ausführen.

Wie kann ich saubere URLs aktivieren?

5
sjkon

Die Einstellungen für die sauberen URLs finden Sie unter admin/config/search/clean-urls.
Auf dieser Seite wird das Kontrollkästchen "Saubere URLs aktivieren" nur angezeigt, wenn es möglich ist, sie zu aktivieren. Wenn der Server nicht für die Unterstützung konfiguriert ist, wird auf dieser Seite die folgende Meldung angezeigt:

Saubere URLs können nicht aktiviert werden. Wenn Sie nach dem Testen auf saubere URLs zu dieser Seite oder zu einem nicht gefundenen (404) Fehler weitergeleitet werden, lesen Sie das Online-Handbuch .

Auf einem Apache-Server und mit den von Drupal verwendeten Standardeinstellungen funktionieren saubere URLs, wenn:

  • Das mod_rewrite-Modul ist für den Server aktiviert
  • Die folgenden Anweisungen sind in der Apache-Konfigurationsdatei enthalten

    AllowOverride All
    AccessFileName .htaccess
    
13
kiamlaluno

Aktivieren Sie das Modul mod_rewrite Und starten Sie den Wampserver neu.

Ich denke, Sie können mod_rewrite Über das Schnellstart-Symbol aktivieren. Klicken Sie mit der rechten Maustaste und zeigen Sie das Menü Apache-Module an und stellen Sie sicher, dass mod_rewrite Aktiviert ist.

PDATE :

Öffnen Sie die Datei httpd.conf Im Apache-Installationsordner und bearbeiten Sie die folgende Zeile:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
#
AllowOverride None

Sein:

AllowOverride All
7
Muhammad Reda

Wie ich mein Problem gelöst habe:

Saubere URLs:

  1. Aktivieren Sie das mod_rewrite mit diesem Befehl:

    a2enmod rewrite
    
  2. Bearbeiten Sie dann unter/etc/Apache2/sites-available die Standarddatei und ersetzen Sie Override None mit Override All. Dies muss zweimal geändert werden.

  3. Starten Sie Apache neu

4
sokratis

Bitte aktivieren Sie rewrite_module für Apache über die Wampserver-Schnittstelle.

Um darauf zuzugreifen, klicken Sie auf das grüne "w" -Symbol in systray, gehen Sie zu Apache> Apache-Module> klicken Sie auf rewrite_module.

ihr Wampserver-Symbol sollte rot und dann orange und grün werden. Wenn nicht, starten Sie wampserver neu. Wenn das Symbol grün ist, besuchen Sie die Apache-Module erneut und stellen Sie sicher, dass rewrite_module aktiviert ist.

das Aktivieren von rewrite_module aktiviert im Wesentlichen mod_rewrite, weiß aber nicht, warum wampserver es so nennt. Hoffentlich löst es Ihr Problem mit sauberen URLs. Sie können es beheben, indem Sie den Test erneut ausführen.

3
D34dman

Öffnen Sie zum Bereinigen der URL Terminal -> Geben Sie den Befehl vim/etc/Apache2/sites-enabled/000-default ein

Es würde die 000-Standarddatei dort öffnen, die Sie sehen würden

<VirtualHost *:80>
ServerAdmin [email protected]

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride none
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${Apache_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${Apache_LOG_DIR}/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

Wählen Sie also den gesamten Code aus und setzen Sie diesen anstelle des Codes in die 000-Standarddatei.

<VirtualHost *:80>
ServerAdmin [email protected]

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${Apache_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${Apache_LOG_DIR}/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

Starten Sie nun den Aparche-Server mit neu

Sudo service Apache2 restart
1
Nitesh Sethia

Sie können dies mit der Datei .htaccess Verwenden

Suchen Sie zuerst diese Codezeile in der Datei .htaccess

#RewriteBase /

und ersetzen Sie es durch folgende Codezeile:

RewriteBase /~yoursitename/yoursitename

Entfernen Sie # Aus dem Code. Hier ist yoursitename der Ordnername nach dem Domainnamen wie example.com/~yoursitename/yoursitename.

1
user50292

Wir müssen die Zeile auskommentieren oder hinzufügen:

LoadModule rewrite_module modules/mod_rewrite.so

ermöglichen mod_rewrite Apache-Modul.

0
user2630080