6 replies [Last post]
theRemix's picture
Offline
Joined: 02/04/2009
Juice: 42
Was this information Helpful?

I'm trying to do this tutorial http://www.runssl.com/content/how-redirect-drupal-or-ubercart-ssl-connec...

and rebooted the server several times with no luck. it's as if i made no changes.

here is my new .htaccess file

#
# Apache/PHP/Drupal settings:
#

# Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl|svn-base)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template|all-wcprops|entries|format)$">
  Order allow,deny
</FilesMatch>

# Don't show directory listings for URLs which map to a directory.
Options -Indexes

# Follow symbolic links in this directory.
Options +FollowSymLinks

# Make Drupal handle any 404 errors.
ErrorDocument 404 /index.php

# Force simple error message for requests for non-existent favicon.ico.
<Files favicon.ico>
  # There is no end quote below, for compatibility with Apache 1.3.
  ErrorDocument 404 "The requested file favicon.ico was not found.
</Files>

# Set the default handler.
DirectoryIndex index.php

# Override PHP settings. More in sites/default/settings.php
# but the following cannot be changed at runtime.

# PHP 4, Apache 1.
<IfModule mod_php4.c>
  php_value magic_quotes_gpc                0
  php_value register_globals                0
  php_value session.auto_start              0
  php_value mbstring.http_input             pass
  php_value mbstring.http_output            pass
  php_value mbstring.encoding_translation   0
</IfModule>

# PHP 4, Apache 2.
<IfModule sapi_apache2.c>
  php_value magic_quotes_gpc                0
  php_value register_globals                0
  php_value session.auto_start              0
  php_value mbstring.http_input             pass
  php_value mbstring.http_output            pass
  php_value mbstring.encoding_translation   0
</IfModule>

# PHP 5, Apache 1 and 2.
<IfModule mod_php5.c>
  php_value magic_quotes_gpc                0
  php_value register_globals                0
  php_value session.auto_start              0
  php_value mbstring.http_input             pass
  php_value mbstring.http_output            pass
  php_value mbstring.encoding_translation   0
</IfModule>

# Requires mod_expires to be enabled.
<IfModule mod_expires.c>
  # Enable expirations.
  ExpiresActive On

  # Cache all files for 2 weeks after access (A).
  ExpiresDefault A1209600

  # Do not cache dynamically generated pages.
  ExpiresByType text/html A1
</IfModule>

# Various rewrite rules.
<IfModule mod_rewrite.c>
  RewriteEngine on

  # If your site can be accessed both with and without the 'www.' prefix, you
  # can use one of the following settings to redirect users to your preferred
  # URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option:
  #
  # To redirect all users to access the site WITH the 'www.' prefix,
  # (http://example.com/... will be redirected to http://www.example.com/...)
  # adapt and uncomment the following:
  # RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
  # RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
  #
  # To redirect all users to access the site WITHOUT the 'www.' prefix,
  # (http://www.example.com/... will be redirected to http://example.com/...)
  # uncomment and adapt the following:
  # RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
  # RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]

  # Modify the RewriteBase if you are using Drupal in a subdirectory or in a
  # VirtualDocumentRoot and the rewrite rules are not working properly.
  # For example if your site is at http://example.com/drupal uncomment and
  # modify the following line:
  # RewriteBase /drupal
  #
  # If your site is running in a VirtualDocumentRoot at ">http://example.com/,
  # uncomment the following line:
  RewriteBase /

  # Rewrite URLs of the form 'x' to the form 'index.php?q=x'.
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_URI} !=/favicon.ico
  RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

RewriteCond %{HTTPS} !=on
RewriteRule ^/?(user|cart|admin) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteCond %{HTTPS} !=off
RewriteRule ^/?(content|category) http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

</IfModule>

# $Id: .htaccess,v 1.90.2.3 2008/12/10 20:04:08 goba Exp $

i'm hosting on MediaTemple DV, i added a file conf/vhost.conf

<IfModule mod_ssl.c>

<VirtualHost 70.32.90.100:443>
ServerName   mysite.com:443
ServerAlias  ">www.mysite.com
UseCanonicalName Off
SuexecUserGroup         theRemix psacln
ServerAdmin  theRemix@needshelp.com
DocumentRoot /var/www/vhosts/mysite.com/httpdocs
CustomLog  /var/www/vhosts/mysite.com/statistics/logs/access_ssl_log plesklog
ErrorLog  /var/www/vhosts/mysite.com/statistics/logs/error_log
<IfModule mod_userdir.c>
UserDir /var/www/vhosts/mysite.com/web_users
</IfModule>
ScriptAlias  /cgi-bin/ /var/www/vhosts/mysite.com/cgi-bin/
SSLEngine on
SSLVerifyClient none
SSLCertificateFile /usr/local/psa/var/certificates/cert-wk1Byl
SSLCACertificateFile /usr/local/psa/var/certificates/cert-cikJ4n
<Directory /var/www/vhosts/mysite.com/httpdocs>
<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/mysite.com/httpdocs:/var/www/vhosts/mysite.com/private/ubercart_keys:/tmp"
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/mysite.com/httpdocs:/var/www/vhosts/mysite.com/private/ubercart_keys:/tmp"
</IfModule>
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
Options +FollowSymLinks +ExecCGI
</IfModule>
SSLRequireSSL
Options -Includes +ExecCGI
</Directory>
<Directory /var/www/vhosts/mysite.com/web_users>
<IfModule sapi_apache2.c>
php_admin_flag engine off
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine off
</IfModule>
</Directory>
</VirtualHost>

<VirtualHost 70.32.90.100:80>
ServerName   mysite.com:80
ServerAlias  ">www.mysite.com
UseCanonicalName Off
SuexecUserGroup         theRemix psacln
ServerAdmin  "theRemix@needshelp.com"
DocumentRoot /var/www/vhosts/mysite.com/httpdocs
CustomLog  /var/www/vhosts/mysite.com/statistics/logs/access_log plesklog
ErrorLog  /var/www/vhosts/mysite.com/statistics/logs/error_log
<IfModule mod_userdir.c>
UserDir /var/www/vhosts/mysite.com/web_users
</IfModule>
ScriptAlias  /cgi-bin/ /var/www/vhosts/mysite.com/cgi-bin/
SSLEngine on
SSLVerifyClient none
SSLCertificateFile /usr/local/psa/var/certificates/cert-wk1Byl
SSLCACertificateFile /usr/local/psa/var/certificates/cert-cikJ4n

<Directory /var/www/vhosts/mysite.com/httpdocs>
<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/mysite.com/httpdocs:/var/www/vhosts/mysite.com/private/ubercart_keys:/tmp"
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/mysite.com/httpdocs:/var/www/vhosts/mysite.com/private/ubercart_keys:/tmp"
</IfModule>
<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
Options +FollowSymLinks +ExecCGI
</IfModule>
SSLRequireSSL
Options -Includes +ExecCGI
</Directory>

<Directory /var/www/vhosts/mysite.com/web_users>
<IfModule sapi_apache2.c>
php_admin_flag engine off
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine off
</IfModule>
</Directory>
</VirtualHost>
</IfModule>

i'm not even sure if this file is being read though, but the conf/httpd.include says

# ATTENTION!
# DO NOT MODIFY THIS FILE OR ANY PART OF IT. THIS CAN RESULT IN IMPROPER PLESK
# FUNCTIONING OR FAILURE, CAUSE DAMAGE AND LOSS OF DATA. IF YOU REQUIRE CUSTOM
# MODIFICATIONS TO BE APPLIED TO THE CONFIGURATION, PLEASE, PERFORM THEM IN THE
# FOLLOWING FILE(S):
# /var/www/vhosts/mysite.com/conf/vhost.conf
# /var/www/vhosts/mysite.com/conf/vhost_ssl.conf
# /var/www/vhosts/mysite.com/subdomains/<subdomain-name>/conf/

any suggestions?

thanks in advance

torgosPizza's picture
Offline
Bug FinderEarly adopter... addicted to alphas.Getting busy with the Ubercode.
Joined: 08/14/2007
Juice: 4110
Re: https issues

Is there a reason you aren't just using Secure Pages? I know that page says "But Secure Pages is in Beta!" I am telling you, we have used the SP module for almost a year and never had an issue. We've used Ubercart since it was in Alpha and have had very good experiences. Just because something is in Beta doesn't mean it doesn't work.

With regard to your actual question, everything looks ok to me at first glance, but you shouldn't have had to add a vhost.conf file, necessarily. And with .htaccess files the changes are immediate, there is no restarting needed after you make a change. (A change is needed, however, if you edit httpd.include or httpd.conf).

Is your server configured for ssl?

--
Help directly fund development: Donate via PayPal!

theRemix's picture
Offline
Joined: 02/04/2009
Juice: 42
Re: Re: https issues

thanks, yes it is configured for ssl (particularly https with same document root)

i'm using secure pages now.

theRemix's picture
Offline
Joined: 02/04/2009
Juice: 42
Re: Re: https issues

well secure pages is simple and works well, but i ran into another problem

http://mysite.com/cart/checkout works fine, but
https://mysite.com/cart/checkout i get this error (again)

warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/var/www/vhosts/mysite.com/private/ubercart_keys/uc_credit.key) is not within the allowed path(s): (/var/www/vhosts/mysite.com/httpdocs:/tmp) in /var/www/vhosts/mysite.com/httpdocs/modules/ubercart/payment/uc_credit/uc_credit.module on line 1350.

my vhost configuration is this

<Directory /var/www/vhosts/mysite.com/httpdocs>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/mysite.com/httpdocs:/var/www/vhosts/mysite.com/private/ubercart_keys:/tmp"
</Directory>

how do i configure it so that https works, and i can still checkout?

torgosPizza's picture
Offline
Bug FinderEarly adopter... addicted to alphas.Getting busy with the Ubercode.
Joined: 08/14/2007
Juice: 4110
Re: Re: Re: https issues

Well that means your open_basedir configuration isn't correct. I would just get rid of the one that says "httpdocs" (So now it will just say:

php_admin_value open_basedir "/var/www/vhosts/mysite.com:/tmp"

Then you need to restart apache by typing, at the command line:

apachectl restart

That will do a soft restart of the web service, and at that point your open_basedir should be changed. You can confirm this by creating a phpinfo file, or by going to your site's /admin/logs/status page and searching for the "open_basedir" directive.

--
Help directly fund development: Donate via PayPal!

theRemix's picture
Offline
Joined: 02/04/2009
Juice: 42
torgosPizza wrote:Well that
torgosPizza wrote:

Well that means your open_basedir configuration isn't correct. I would just get rid of the one that says "httpdocs" (So now it will just say:

php_admin_value open_basedir "/var/www/vhosts/mysite.com:/tmp"

Then you need to restart apache by typing, at the command line:

apachectl restart

That will do a soft restart of the web service, and at that point your open_basedir should be changed. You can confirm this by creating a phpinfo file, or by going to your site's /admin/logs/status page and searching for the "open_basedir" directive.

what?

what would the correct configuration be?

is the line that says
incorrect?

how do i make it reflect https ?
because my https site is being served from /var/www/vhosts/mysite.com/httpdocs

(sorry for double posting (again))

GreyHawk's picture
Offline
Joined: 03/17/2009
Juice: 174
Any progress on this...?

I just went through this on MT (a DV server) and created a vhost_ssl.conf in the same directory as the vhost.conf; there's an example in the MT knowledge base here:

http://kb.mediatemple.net/questions/514/Enabling+PEAR+by+setting+your+op...

...just ignore the PEAR stuff. Smiling

(Specifically, focus on the instructions in steps 2 and 3.)